adds wrapper methods to EntityStateMachine to add directly to Entity

This allows a standardised fluent api for configuring Entities and their States 

So instead of adding components that will be permanently registered with the Entity directly, using the add( component:*, type:Class = null) method, all components can be added onto the EntityStateMachine using similar fluent api.

Perhaps add() isn't the best name for the method, I have also considered

1) addPermanently() 
2) addDirectly()

cheers