Added complete wave generation, some wave motion scaling, added base classes for interface.as and messenger.as