20: Partial checkin with class model implementations

TODO: Still need to update the maven part, with maven resources and
visitors and also to build up the boilerplate