add model classes, start using annotations and fix compilation