filters: add selected and length filters

We will be using them in a followup commit.
delete-modal: let user confirm deletion (fixes #84)
container: make delete button a default botton

This button is no longer dangerous in itself since we now show a
confirmation dialog.
swift: add deleteDirectory method

This deletes all objects in the specified pseudo-directory.
delete-modal: support deleting pseudo-directories (fixes #36)

This is not terribly elegant at the moment: you simply see the
directory as an item in the delete modal and when it is deleted, it
disappears from the object listing.

See #85 for ideas to improve this.
Merge pull request #86 from mgeisler/delete-modal

Delete modal
swift-simulator: correct handling of prefix

Before, a request with prefix=foo and an object named foo/bar.txt
would result in '/bar.txt' being returned.

This is incorrect since Swift really returns 'foo/' in that case. In
general, objects and subdirs are always returned using their full
name, so we should not cut off the prefix like we did.
swift-simulator: only add a subdir once in listObjects

Before, we would add {subdir: 'foo/'} twice when a container had two
objects named foo/a.txt and foo/b.txt.
Merge pull request #68 from mgeisler/trailing-subdir-slash

swift-simulator: correct handling of prefix
swift: pass extra headers to auth promise

This allows $swift to tell $auth about extra headers that should be
included when pending requests are retried.

Before, while the X-Auth-Token header was correctly added to
$swift._headers, it was not included when $auth retried the pending
requests -- with the result that the failed request would trigger
authentication again. For the cookie-based authentication in liteauth
this didn't matter (since the browser would send the cookie when the
request was retried), but it matters when we authenticate against
Keystone where we need to include the auth token with every request.

An alternative solution would be for $swift to update $http.defaults.
However, that would be changing global state and obscure the flow
between the two components.
swift: use $http.get shortcut method
swift: camel-case authUrl in auth credentials
auth-modal: show authUrl

This will make the form more similar to the Keystone auth form.
upload-modal: make label column wider

This is needed for the Keystone auth labels.
swift: add type to auth method

This is currently unused and will default to do LiteAuth
authentication.
swiftSpec: better separation of tests cases
swift: add Keystone auth

Not yet exposed in the UI.
config: add service for maintaining app configuration
auth: add Keystone support (fixes #82)

Configure this in the config.json file with something similar to this:

  {
      "auth": {
          "type": "keystone",
          "url": "http://localhost:5000/v2.0/tokens"
      }
  }
README: document config.json