add proper mvp-style camera perspectives
move global matrix calculation into display
add basic camera management to display