New: Added support for scaling in CPView

This PR adds the support of scaling in CPView.
There are two new public methods in CPView : -(void)scaleUnitSquareToSize: and -(void)setScaleSize:
-(void)scaleUnitSquareToSize: works exactly as in COCOA, it means if you set a first scale to 0.5 and then 0.5 again, the scaleSize of the view will be 0.25
-(void)setScaleSize: works with the value given. If you set 0.5 after you just seted 0.5 the scaleSize will be 0.5. This method is definitly better in using, specially when using the scaleSize binding with a slider.

Test app in Tests/Manual/ScalingTest
Fixed: shouldSelectTableColumn isn't called in CPTableView and CPOutlineView

Previously shouldSelectTableColumn wasn't called in CPTableView and CPOutlineView.
This PR resolves this issue, shouldSelectTableColumn is now called between selectionShouldChangeInTableView and tableViewSelectionIsChanging as in COCOA.

Test app Tests/Manual/TableTest/DelegateSelectionTest/
Fixed: editing textFields on different windows can clobber each others contents

Was be caused by resignFirstResponder not checking that the input owner is self.

Fixes #1983
New: Added Movement Codes for CPTextDidEndEditingNotification

This PR adds a new feature for CPControl. Now when leaving the control, the userInfo of the notification CPTextDidEndEditingNotification contains the last movements of the control as in COCOA

Test app in Tests/Manual/CPTextFieldMovementsTest
New: text underline support for private _CPImageAndTextView.

This features presents a less hack-y way to underline text for those not afraid to use private, internal APIs.
New: "//site.com/x" style URL support in CPURL and CFURL.

With this feature, CFURL and CPURL can now correctly transform a relative scheme URL starting with a double-slash.

For example, + CPURL URLWithString:@"//a.se/a" relativeToURL:@"ftp://b.se/c" would represent an absolute URL of "ftp://a.se/a".
Fixed: the userInfo of the notification from textDidEndEditing is wrong

Previously, when overriding the method textDidEndEditing, the userInfo notification didn't contain the information about CPTextMovement
Merge pull request #2008 from Dogild/souldSelectTableColumnFix

Fixed: shouldSelectTableColumn isn't called in CPTableView and CPOutlineView
Typo
Merge pull request #2010 from daboe01/fix-textFields-on-different-windows-can-clobber-each-others-contents

Fixed: editing textFields on different windows can clobber each others contents
Merge pull request #2011 from Dogild/CPTextMovements

New: Added Movement Codes for CPTextDidEndEditingNotification
Merge pull request #1998 from Dogild/scaling-support

New: Added support for scaling in CPView
Fixed: view coordinate conversion broken by previous commit.

Without this fix, -CPView convertPoint:fromView was broken due to the changes made in #1998. In particular, the transform for the fromView would be calculated and then just thrown away if the views were in the same window. This happened to work in some specific cases and the lack of unit tests concealed the error.

This fix properly applies the transforms when two views are in the same window without one of them necessarily being inside the other.

Refs #1998.