Merge pull request #864 from mitchless/menu-memory-leak

Fix implicitly defined globals in SC.MenuPane
Adds unit test showing that relative bindings to parentView in SC.View instances are not being cleaned up properly.
Fixes problem with cleaning up bindings on SC.View.  Previously, SC.View would destroy itself first before calling the super destroy method.  This would remove the parentView object from all childViews, which meant that when the super destroy method tried to remove bindings and observers, it was unable to resolve any parentView property paths.

With this change, we call the super method first to destroy bindings and observers and then clear out the parentView of each view.
Fixes improper implementation of SC.SelectionSet:constrain (fixes #870).

After cleaning up a memory leak in SC.Set, it was discovered that the constrain method of SC.SelectionSet doesn't work properly.  It was naively using forEach to iterate through the objects while mutating the array so that the last object would never be constrained.  Includes unit test.
Updates CHANGELOG.md.
Removes :template_view as default framework.
Fixes SC.View:resetAnimation() to be closer to functioning, but more research needs to be done on this.  It previously did not work at all.
Cleans whitespace + updates jslint
Fixes a bug that left childView elements in the DOM when they were rendered as part of their parent's layer and later removed.

If childView layers are rendered when the parentView's  layer is created, the `layer` property on the childView will not be cached.  What occurs is that if the childView is then removed from the parent view without ever having its `layer` requested, when it comes time to destroy the DOM layer of the childView, it will try to find it with a `get('layer')`.  The bug was that it only returned a layer if the view has a parent view.  However, since the child was removed from the parent first and then destroyed, it no longer has a parent view and would not try to find its leftover DOM layer.

- Includes unit test.
• Improves animation support for current and future browsers.  The previous platform checks prevented using accelerated layers on non-webkit platforms, plus any browser that dropped the prefixes would indicate that they did not have support for transitions and transforms.
• Fixes SC.View:animate() failing to work on Firefox 16+ and IE10+, since they have dropped prefixes on the properties.  Closes #354.
• Removes duplicate transitionend event listeners and only listens for the supported platforms event.
• Adds 'delay' option to set the transition-delay property and fixes all the failing tests on Firefox pre-16 and 16+.  Closes #377.

- May effect issue #867
Updates CHANGELOG.
Minor optimizations to Array#filterProperty.
Boneheaded typo fix.
Adds note about which values will be filtered if filterProperty isn't given a value to match.  Also cleans up whitespace.
Added special getter for "elapsed" time.
Created "%E" and "%e" time formatters, for elapsed time measurments.
Added datetime/core dependency to datetime/localized.
Fixed source formatting.
Moved string formatting logic into datetime/localized as it depends on
localization.
Created stub method in datetime/core
Added %E and %e to unit tests in datetime/core