Initial commit, domain classes and controllers