Optimize repetition iteration control for set

We encountered a performance problem in the interaction between Flow and
Repetition. The Flow updates the visible indexes of the repetition
during the draw cycle, and was found to be taking an exobitant amount of
time.  The visible indexes updates occur as a sequence of calls to `set`
on `visibleIndexes`, each of which propagates a call to
`handleOrganizedContentRangeChange` on the repetition, updating the
value at a single index.  As such, it is possible to bypass the check
for whether enough iterations have been created (none will be created or
destroyed), and possible to avoid splicing the iteration in and out.
This optimization just changes the bound content for the existing
iterations in place.

A previous revision of Repetition, before the integration of bindings,
certainly did contain this optimization.
Fix range controller swap
First shot at a label component.
Another label option: trigger an 'activate' event on the target.
Revert "Another label option: trigger an 'activate' event on the target."

This reverts commit 209a4a919a2f341568336dc5874b930f2335f2cd.
Label action is configurable, but defaults to 'activate'
Add blueprint and test for label.
Add axis property to AbstractSlider blueprint
Uprev Collections and FRB

This addresses a bug in Collections impacts FRB and all MontageJS
applications on Chrome 30.  Chrome 30 introduces ES6 Array methods,
`keys`, `values`, and `entries`, which breaks an invariant that map
collection constructors depended upon: that these methods would only
exist on map-alike collections excluding Array.  Collections now depends
on an `isMap` property on all map-alike collections except Array to
distinguish a map from an array of entries.
RangeController selection must always be in its content.

- This fixes a bug where, if the only selected item is removed from content, it remained in the collection to avoidEmptySelection. We now pick a random item in the content to replace it in this case.
RangeController's selection enforces uniqueness according to the contentEquals of the content.
Make value always an item from content

Initialize value when content is set and set it to a new item from the content when it is deleted.
Copy new array content on "values" assignment

"values" is a binding to a "rangeContent()" and as such its reference cannot be changed.
Instead of assigning the new value given we copy its contents to the existing array.
Fix formatting and minor grammar for documentation of composer base class.
Fix jsdoc formatting and small grammar items, as well as add example and explication for KeyComposer
Formatting fixes and additions for PressComposer jsdoc.
JSdoc additions and formatting fixes for TranslateComposer.
JSdoc for SwipeComposer: remove empty doc blocks and add documentation for two user-customizable properties.
Fixes for composer jsdoc code review.
Merge pull request #1356

JSDocs for Composers