I7: Implement Abstract Model with basic functions

Reviewed and approved.