Implement notifications API

This introduces the cilantro/ui/notify module which exposes the
structures for creating a notifications stream.

The default _global_ stream is defined in the cilantro/ui/core module
and attaches the `notify` method directly on the cilantro object. Other
modules can reference it via `c.notify(options)`
Merge pull request #238 from cbmi/issue-227

Implement notifications API
Changes offset calculation to user offset() instead of position() Fixes #239
Merge pull request #240 from tjrivera/issue239

Changes offset calculation to use offset() instead of position()
Fix ui selectors for create query modal and button

@tjrivera noticed that the create query modal and button were accessible even when the Serrano version didn't support it. This was caused because of outdated selectors on UI components. The class names of the targeted components were changed in 584df5ebec00a2a8fc95624475c49e86e5fb22e8.
Add filter button icon and hide toolbar button text on small displays

Bootstrap considers 1200px or more to be a large display. It just so
happens that our toolbar's layout gets out of whack right around that
dimension so the new CSS in the media selector deems a large display to
be 1200px and hides the button text in the navbar buttons when the
screen width is smaller than that.
Add tooltips to the toolbar buttons(including paginator buttons)
Use offset of results workflow to calculate right of context panel
Merge pull request #245 from cbmi/issue-241

Add support for smaller displays and fix right offset calculation for context panel
Parse values as they are entered, not just when show list is clicked
Merge pull request #248 from cbmi/issue-247

Parse values as they are entered, not just when show list is clicked
Add clean:release task, do no generate source maps for dist
Allow using the id directly
Add syncless model and collection

This simply defines a no-op sync method so server requests do not
occur.
Remove proxying all child events on branch node

This is no longer necessary since nodes communicate directly to the
manager.
Remove event-proxying and event-triggered saves

This currently is not necessary and increases the complexity of
determining when a node saves.
Rename update -> set

Move previous _update function on class as _set
Add Evented class for clarity and convenience
Change define to delegate to working node directly

The path argument is simply an alternate way of defining a node. To
reduce confusion, the preferred way is to chain together define calls
for each branch node created.
Delete toJSON serialization to upstream tree

The manager has been refactored to apply changes to the upstream
tree _before_ syncing with the server, then syncing with the server
using the upstream's content.

This reduces the confusion and complexity of knowing which operations
are appropriate or allowed for the upstream vs. working trees.