Fix child windows may reside on other layers than parent.

Child windows should reside on the same layer as parent.
Merge branch 'refs/heads/slevenbits-cpcolor-hsb-fix'
It's important to order out child windows before parent window relationship is broken.
Fixed: CPComboBox popupList should close if mouse is clicked outside of the control

Previously the list of the CPComboBox didn't close when clicking outside of the control
Now the list has the same behavior as Cocoa

Fixes #1859
Added optimization
Merge pull request #1915 from Dogild/PopUpListComboBox

Fixed: CPComboBox popupList should close if mouse is clicked outside
Fixed: CPDatePicker freeze when hidden

Previously the CPDatePicker freezed when trying to hide it when it was the firstResponder.
There was an intern problem in the CPDatePickerTextField about the nextKeyView. That's why there was a boundless loop and the freeze.
This PR also fixed a big about the previous and next textField in the CPDatePicker.
It also fixed a bug about the CPDatePicker when it becomes firstResponder.

Fixes #1909
Revert "It's important to order out child windows before parent window relationship is broken."

This reverts commit c6553016d34c6935557751f3ee872fd643fa711e.
Revert "Fix child windows may reside on other layers than parent."

This reverts commit 8e4f1fdd109e5ccda11f1d57a3bbfdf2a32f2288.
Consistent approach to handle child windows.

When added, level of child window is reset to level of the parent.
A user may change it aftewards to the level that may even break
specified relative position.

E.g. if a child window is added below the parent (Normal)
and its level is set to Floating it will be ordered above.

Whenever you change level of the parent window, levels of the child
windows are reset as well ignoring all your changes.

According to the example, if you set level of the parent to Normal+1,
child window' level will also be set to Normal+1 and its relative
order to the parent (below) will be restored.
Fixed: Trying to open a CPPopover in a secondary platform window opened in the main window

Previously, when opening a popover on a view from another platform window, the popover
was actually opened in the main window. This fix ensure to set the correct platform window
to the _CPPopoverWindow by setting it to the [[positioningView window] platformWindow];
Fixed: CPAlert always shows on main platform window

Previously, a CPAlert was always shown on the main platform window. This behavior could result in a feeling that the application was hanging because of the modal nature of the alert when users are looking to another platform window. This fix ensure to set the CPAlert window's platformWindow to the current key window using [[CPApp keyWindow] platformWindow].
Merge pull request #1916 from Dogild/DatePickerHidden

Fixed: CPDatePicker freeze when hidden

Reviewed
Fixed: Tooltips always showing in primary platform window

Previously, the tooltip of a control was always shown on the primary platform window. This fixes sets the tooltip window's platform view to [[targetView window] platformWindow].
Merge branch 'master' of github.com:cappuccino/cappuccino
Merge branch 'slevenbits-child-windows-order-fix' of git://github.com/slevenbits/cappuccino into slevenbits-slevenbits-child-windows-order-fix
Test: expose child window level crash bug if present.

This manual test exposes the bug addressed by issue #1911.
Merge branch 'master' into slevenbits