First working version of tuple recording for angular console

Fixes [MLHR-1292](https://malhar.atlassian.net/browse/MLHR-1292)

![tuple-recording](https://cloud.githubusercontent.com/assets/1390651/5309725/8633b240-7bdd-11e4-8c44-d3a4a29b3063.gif)

Squashed commit of the following:

commit 43fb989eccd1616deb65b1b63e227abe50a52b36
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 17:41:26 2014 -0800

    check for non-objects in BaseCollection set

commit 52da648c50123247d97c35a9b056e6462adad8f1
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 15:36:19 2014 -0800

    updated selection algorithm for list of tuples

commit 0d17da9ca5db3e51a77172d01834bc5bb8923ec9
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 14:26:28 2014 -0800

    changed verbage to "sample" rather than recording

commit 680665a587756ad19ecc730afdd0cb6f632a670e
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 13:51:19 2014 -0800

    add more deps to operatorManager

commit 58ae0d9a018edc5f9a6fbcf1155d2c1fe0450595
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 13:50:50 2014 -0800

    add dt-text-sprintf directive

commit 63c590b48e919a32a17c2e3834f095f76ec5f0cc
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 11:12:28 2014 -0800

    added coverage:watch gulp task

commit 0236dabf9bf7b928dc11111d2038b0e93275602c
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 11:12:02 2014 -0800

    add recordingBrowser directive

commit 4cd53d2c25b7f70ca4c762f74691eadfa9c45a6b
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 11:06:10 2014 -0800

    update physical operator list with operatorManager.openStartRecordingModal

commit d604b4476f7945d82eb7c09b3fc1cf8068c23417
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 11:02:17 2014 -0800

    updated permission ability names

commit 3af5fecde4cba1dc65c07e186556db01e5e7f88e
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 10:53:32 2014 -0800

    update operatorManager with new recording api

commit ac425e7fed88f26c5c30ca49a73d3ba7593ba760
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Dec 4 10:43:10 2014 -0800

    Added more detailed usage description for delayedBroadcast

commit 7fce40f0bdf91f35c6eac5280e50188f0f851b8d
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Dec 3 17:27:10 2014 -0800

    update RecordingModel with getTuples and delete calls

commit 9739cc62712b207efdedaaf4b921305b41576fba
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Dec 3 17:21:10 2014 -0800

    update twoWayInfiniteScroll: docblock, addToScope, options.getItems

commit fc3cab86b5b9879b2e90fd11aa38efeea6a557a7
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Tue Dec 2 13:28:47 2014 -0800

    update to test-directive snippet, allowing markup to be specified differently in tests

commit b0bf3d63cd53f40aa524f5a4cbd2385b2d73f776
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Tue Dec 2 13:28:04 2014 -0800

    normalized @name declarations in docblocks

commit 131324a208f134ec28a4d9f0c5096fe8148d88e7
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Tue Dec 2 13:27:11 2014 -0800

    add the addToScope option to twoWayInfiniteScroll directive

commit ced60909ecf044dd74bfc9b88d9354d406499aa3
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Tue Dec 2 04:27:57 2014 -0800

    allow deferred init call for twoWayInfiniteScroll

commit 654d9063c244f2f30b7bbd80c59ed9d1da585256
Merge: 7c57fe4 ce3b9d6
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Mon Dec 1 15:36:00 2014 -0800

    Merge branch 'ngConsole' into ng-recording-with-auth.MLHR-1292

commit 7c57fe4d033c55ffa993c8953baac3d93ebe0c91
Merge: 08c126a cc270b5
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Mon Nov 24 16:29:46 2014 -0800

    Merge branch 'ngConsole' into ng-recording-with-auth.MLHR-1292

commit 08c126a8c82fdcf34daff21834d6c55c310ea614
Merge: cfc76a2 7cdf753
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Fri Nov 21 12:49:47 2014 -0800

    Merge branch 'ngConsole' into ng-recording-with-auth.MLHR-1292

commit cfc76a24f66c8f03ba72f34c7655a175df04dcd1
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Fri Nov 21 11:18:27 2014 -0800

    fix webSocket disconnect/connect issue while logging out and in

commit 82c0572b43b4ae7d1a019d3998a5d1a174de0dd5
Merge: 524e128 85af771
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Nov 20 12:41:57 2014 -0800

    Merge branch 'ngConsole' into ng-recording-with-auth.MLHR-1292

commit 524e12800e3682de5ac924323bb90b73293a4f0c
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Nov 20 08:42:32 2014 -0800

    error -> notify

commit 38dbd0ffaec1ceb6693606f106bb03b8b633eb7b
Merge: a5666be 7acb098
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Nov 19 08:49:42 2014 -0800

    Merge branch 'auth-gw-restart.MLHR-1585' into ng-recording-with-auth.MLHR-1292

commit a5666be7e679abb235034ea5b24ad6c5911d1ba3
Merge: 3d89564 ddbf1a6
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Tue Nov 18 15:44:38 2014 -0800

    Merge branch 'ngConsole' into ng-recording-with-auth.MLHR-1292

    Conflicts:
    	app/components/settings.js
    	app/index.html

commit 3d895645ec77a6ef0871437ea8101d4b74df5bab
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Nov 12 23:59:53 2014 -0800

    fixed tests

commit 199d23e772e834a3300d57d6f70bf18a680fbbdd
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Nov 12 23:47:57 2014 -0800

    added RecordingCollection to index

commit 007fb00545bfab8820b3420fcbd94ea75a5f2c56
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Nov 12 23:47:40 2014 -0800

    removed temp comment

commit 05c4108e0336c2d8408cc7c2dbf32ce724defa8a
Merge: 3900105 1efaafa
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Nov 12 23:43:55 2014 -0800

    Merge branch 'ng-ui-auth.MLHR-1574' into ng-recording-with-auth.MLHR-1292

commit 390010591d97aba639c0ba04e6672ee3bae6bc4e
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Nov 6 11:02:29 2014 -0800

    add description to operatorManager

commit ba96af030d92e34595b3ba76e5ad7aef9ae77822
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Nov 6 11:02:10 2014 -0800

    small fix to doc styles

commit 6063c461853dc2339a7b67d8bdaca5a4b6330f7c
Merge: 1d6dfbf ae8df8a
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Thu Nov 6 10:51:10 2014 -0800

    Merge branch 'ngConsole' into ng-recording.MLHR-1292

    Conflicts:
    	gulpfile.js

commit 1d6dfbfac593e31614e04d8cb371cd8b3766a86e
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Nov 5 19:43:40 2014 -0800

    add ngdocblocks in several places

commit a2067e848d11aba8ce96f95cd56d93f8296248b9
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Nov 5 19:42:13 2014 -0800

    Add RecordingModel and RecordingCollection, add first cut of operatorManager, update settings with recording object.

commit 559f1c73ce843bf241029eea3cde719985692346
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Nov 5 16:53:53 2014 -0800

    add ngdoc blocks to settings

commit 2895ad6ff715d8ed323135e3842ab1bb505377ae
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Nov 5 16:53:31 2014 -0800

    add ngdoc blocks to getUri