feat(common): prevents $then to wait for a digest cycle when last promise is resolved.
feat(common): adds the $action method that allows creation of cancelable actions.

Also adds the FastQ utility service, this replaces $q in common api to
prevent promises to wait for a digest cycle.
refactor(): makes collection and record main actions use $action

BREAKING CHANGE: Actions will now be chained and may not execute inmediatelly if called after an async action.

Affected actions:
* Record.$fetch
* Record.$extend
* Record.$save
* Record.$destroy
* Collection.$fetch
* Collection.$add
* Collection.$remove
* Record/Collection.$resolve
* Record/Collection.$reset
fix(test): fixes the preload plugin spec
feat(plugins.dirty): makes $restore use $action