Fullscreen Editor (new fullscreen mode for clean UI)

Organize Maximize/Fullscreen mess and add a new fullscreen mode with no UI

* Maximize Editor: (old Ctrl+Up)
* Full Screen Window: (old Alt + F11)
* Full Screen Editor: new operator (Alt + F10)

It should fullscreen the window and make it clean (no UI, no buttons).
After exiting it, it should return to the previous window state
(windowed/fullscreen).

This was originally intended for the multiview branch, but this
functionality also benefits non-stereo workflows, thus it can be
reviewed and committed independently.

Development notes:
* This includes cleanups in the code to sanitize the naming of
  fullscreen/maximize across the window/editor code.

* This includes a hack for OSX due to a bug explained in D677
 (Thank for Jens Verwiebe help into finding this)

@brecht, @fsiddi, this is based on the discussion we had last year (after bconf), so I'm assigning you both as reviewers since we should be on the same page and you know more about the needs of this features than anyone else
@ton, adding you here as well, since you were one of the advocates of having this mode designed for Blender as a whole, not only multiview.(and because the OSX hack is required probably because of your recent fullscreen implementation for OSX, so you may be interested in looking at that.

Cheers!

Reviewers: fsiddi, brecht, ton

Subscribers: ton, brecht, fsiddi, jensverwiebe

Differential Revision: https://developer.blender.org/D678
cleanup
Removing OSX hack now that it was fixed/workarounded in master
left over from removing osx hack
fix crash reported by Francesco Siddi (fsiddi)
Operator to show/hide header (ctrl+h)
fix for unfreed memory when changing editor type
no longer go window fullscreen when toggling editor fullscreen
add the operator to the menus
unify both "fullscreen/maximize" operators
cleanup against master
have back to previous screen working for area fullscreen too