Further work on MVC implementation, added generic panel for editing abstractmodel