Improvements to the ThemeDescriptor capp template:

- New/improved jake tasks: debug, release, all, clean, clobber, test, test-release, help.
- help task shows comprehensive, formatted documentation for the available tasks.
- BlendKit is automatically symlinked into the Frameworks directory if necessary as part of the build process, so that the showcase will always work.
- User can easily change the build directory by changing one line.
- Fixed incorrect placeholders in main.j.
Added textFrame method to locate the text within the view
Removed duplicate productName
Made colorPrint function local
Added license to header, SYS var
-initial stab at doc-modal sheets
-fix uninitialized _selectedRange member when loading from cib
Revert "-fix uninitialized _selectedRange member when loading from cib",
putting in another branch

This reverts commit 2a82703e468d19c49ed9df3db84d2ee25ec13b3f.
Merge remote-tracking branch 'upstream/master'
Various fixes for sheet bugs
-handle attempt to close sheet while it is animating in
-fixes Safari 5.1 animate out bug by using a timer to
initiate the in/out process
-allow window shadow to become 0 width/height for smoother animation
CPRuleEditor: Since commit 2b52f7d, CPRuleEditor's delegate method -ruleEditor:displayValueForCriterion:inRow: is more restricive: you must return the same view object for a specific criterion in a given row.
In CPRuleEditorCibTest, the delegate has been updated to follow this rule, it also fixes a bug where the predicate was not correctly handling custom control values.
CPPredicateEditor: - Templates merging. Means that from the same left item you can have different views on the right:
                      * date is (today, yesterday)
                      * date is less than [text field]

                    - CPPredicateEditorCibTest example: templates merging in the 'mixed' criterion.
                    - ojtest AppKit/CPPredicateEditorTest testing the merging feature.

                    - Cleaned and rearranged code related to the right control action method.
                    - re-enable tooltips.
CPRuleEditor: -bind:toObject:withKeyPath:options: removed a useless check that was causing an exception when keyPath was a compound key path.
              CPPredicateEditor test app: bind textfield and editor to a CPObjectController.
CPRuleEditor IE7/8/9 compatibility, closes #1279
CPPredicateEditor: bindings compatibility. Send control action only after a UI interaction to prevent sending unwanted notifications to the binder.
                   Send action through the responder chain even if target or action is nil. CPControl relies on this to send updates to the binder.
CPRuleEditor: renamed private class RowObject -> _CPRuleEditorRowObject
CPRuleEditor: In -initWithFrame: the _CPRuleEditorLocalizer was not initialized by default.
CPRuleEditor : Fixes a bug where a rule editor embedded in a scroll view was not updating its frameSize when rows where added/removed.
Reported here: https://groups.google.com/d/msg/objectivej/G2MFGGSHaOY/ojcQaoNSpcAJ
I also adjusted the plus button right padding to give enough space for the scroller.
Edited CPRuleEditorCibTest xib to unhide the vertical scroller.
Cleanup: removed log statements, some comments, css transition hack for fading the drop line separator.
Merge branch 'master' of git://github.com/cappuccino/cappuccino into CPRulePredicateEditor