Improve experience of camera control

I like the ideas

I do not think they will end up in the framework (not directly) but they could definitely extensions as camera behaviors