Merge with iCME++

I didn't expect this branch to grow so much, probably it warrants a 1.7 version number. Besides adding three new modules I have:
* refactored parts of four existing modules
* fixed a couple of small bugs
* cleaned up the code to pass [JSHint](http://www.jshint.com/) tests

See commit comments for details.