fixing issue #337
fixing selection checkbox with pinning
accidentally set default improperly.
Adding a test spec file for templates
Added descriptions to karma file conf
Fetch templates with $http, run init() after

getTemplate() now return a promise. It is immediately resolved if the
template is local. If it is remote, the promise is resolved after the
template is fetched and put into the cache.  Also the $http request is
cached in $templateCache as well, so the same template should only be
fetched once no matter now many grids use it.

New function self.initTemplates(), calls getTemplate() for each of the template
types. Returns a promise via $q.all() that bundles all the getTemplate()
promises.

self.init() now returns a promise and defers execution until after
initTemplates() completes.
Wait for grid.init() to complete, then continue

grid.init() is now called here, not in src/classes/grid.js. It returns a
promise which delays the execution until everything is ready (templates,
and whatever else init() does).
Adding express webserver for testing templates

A bug with external templating occurs when the template comes back AFTER
the data is ready to be drawn in the grid.  This script uses express to
delay serving the grid template for a couple hundred milliseconds.
Adding express to devDependencies
Adding files for testing external templates

There is a bug with external templating where if the template comes back
AFTER asynchronously loaded data is ready, an "$apply/$digest is already
executing" error will occur. This test will demonstrate that in tag 2.0.4
if you access it via scripts/server.js
Removing commented out old code
WIP: getting ready to add tests
Using angular-seed's scripts/web-server.js
Using angular-seed's angular-scenario.js
Updating to angular v1.0.6 so karma works
Changed angular ref from 1.1.3 to 1.0.6

Karma wasn't working with 1.1.3
Making e2e config same as angular-seed
Making e2e test script same as angular-seed
Making runner.html the same as angular-seed
Fix for "browser is not defined" error

The `browser` variable is not available outside a beforeEach() call.