big update

changed overall structure to simply models/views: class inheritance
handled separately; improved readability