Cleaning up camera, part I
prepared ui framework and cleaned up shader class code
temporary fix for 2 bugs.
shader cleanup has now been hotfixed and is ready to be ushed.
merge conflicts