Added more client-side validation and server-side JPA constraints. Multiple bugfixes. Each variable tested.