cleaning up
viewport class added
viewport logic
then, done on view. Misc refactoring & cleaning up