adds shouldReorderColumn to CPTableView delegate methods
Merge branch 'master' of https://github.com/cappuccino/cappuccino
fixed reordering column with a restriction on a targeted column
changed condition order for optimization
added _lastDragDestinationColumnIndex to call delegate method only once
removed an extra blank and changed _shouldReorderColumn format
removed extra blank and added a blank line above if condition
Fixed: stringByTrimmingCharactersInSet not removing characters at end

If a string had characters from the set at both the start and end,
the end trim was one character less than required.
Merge pull request #1869 from sherab/stringByTrimmingCharactersInSet-fix

Fixed: stringByTrimmingCharactersInSet not removing characters at end
Fixed: CPBezierPath getLineDash:phase: typo.
Docs: Out of date documentation for CPTableView

A small documentation change to reflect the updated viewForTableColumn:row:
Fixed: XCodeCapp adding duplicate files to Xcode project

Previously, XCC would indiscriminately add files to the Xcode project via the pbxprojModifier.py script. This resulted in duplicate references to a file.

This fix adds a check to see if the file is already included in the project's sourceGroup folder, and will return None if it is.

Fixes #1866
Fixed: CPArray did not allow binding to @count.

Previously, CPArray did not allow binding to the collection operator @count. In Cocoa this is allowed.

This commit allow the key path @count to be observed, so that @count can be bound to.

Formatting fixes as well.
Fixed: Infinite loop when a first responder has a nil superview

This bug appears only if a table view have been added to the window.

CPTableView observes first responder changes and moves up in the view
hierarchy to determine the edited data view. If for some reason, a
superview in the hierarchy was nil, we entered an infinite loop.

This commit adds guards to the recursive method that searches the data
view. Also added an early return when the fr changes to a view outside
the table.

Fixes #1875
Merge remote-tracking branch 'upstream/master' into CPTableView-viewForRow-infinite-loop
The FR can be a window, don't check if it's inside a table.
Merge pull request #1876 from cacaodev/CPTableView-viewForRow-infinite-loop

Fixed: a view outside a CPTableView causing an infinite loop when becomes FR.
Fixed: Typo in CPImageView Category

The category name for CPImage (CachedImage) was spelled wrong. This commit fixes the typo.
Fixed: A dragged view was constrained inside a plaform window bounds.

For example, in CPTableView before this change, dragged rows could not move up if the table view was near the top of the platform window.

Fixes #1877
Test TableTest/ViewBasedCib/ and drag up the third row.
Merge pull request #1878 from ahankinson/fix-cpimage

Fixed: Typo in CPImageView Category