Move to an CQRS architecture
Recreate javascript to be more oop