split api.Camera off from api.Observer

improving separation between 3D world and 3D view related stuff and
2D-only stuff