Started on backend
Ported frontend to coffeescript