Sync camera

All explanations (I hope so) are in my commits log.

I only worked on view matrix. I will add the same mechanism for projection matrix later.