Project Gui: MAJOR CHANGES

- The serialisation has been completely reworked. The old
data-structures used in TabWidget and the ProjectGuiSerialization were
error prone and had many bugs. They were relying on object names and
this was not a good solution.
We now instead store a recursive layout based on splitters. The
structure is now much easier to understand and maintain.

A few new possibilities due to the structure changes:

- You can now split widgets which are in floating windows.
- The project will remember floating settings panels
Merge branch 'workshop' of https://github.com/MrKepzie/Natron into workshop

Conflicts:
	Gui/Splitter.cpp