big API change: submachine is now meant to be extended

In order to support inheriting from Submachine and extending it, now
most methods are class macros. Also, a simple pure JavaScript
inheritance solution is provided outside CoffeeScript. Now it is
possible to create state machine classes to be then instantiated
multiple times.
tweak minification options
improve README
more README improvements
even more README improvements
'init' is now 'initialize'
clarify  in README
implement subclass method with CoffeeScript primitives
better README
Merge pull request #1 from lucaong/class_methods

Submachine as a class meant to be subclassed and extended