1. Make the package more configurable and portable.
2. Documents for IM modules.
3. .............
