Object Storage Miscellaneous

Reviewing the Object Storage v1 code yesterday I noticed several things that need to be done to drive it torward completion.

- Minor fixes
 - [X] Remove 'get' prefix in methods
 - [X] Add doc.go files
- Testing
 - [X] Add `v1` directory to Acceptance Tests
 - [X] Break-up storage_test.go into multiple files
 - [X] Add Unit Tests
 - [X] Improve Acceptance Tests (right now they assume an empty object store)
- Additions
 - [X] Improve documentation
 - [X] Return more informative errors
 - [X] Implement new Pager (#203)
 - [X] Generic BuildQueryString and BuildHeaders utility functions for parameters (f90a43ccbb33afd89cd912a7a464b2ce7eca3bf1)
It's odd to me that the end-user needs to know to check the `Err` field manually after getting a `Pager`. What do you think about "deferring" the error here to the return value of the `EachPage` call below? Meaning, just add a snippet like this at the beginning of the `EachPage` method:

```go
func (pager Pager) EachPage(...) error {
  if pager.Err != nil {
    return pager.Err
  }
  // ..
}
```

That way it's consistent with the way that other requests defer errors to their `Extract` methods, and it reads more nicely for clients who want to do:

```go
err := containers.List(client, container.ListOpts{}).EachPage(func(page pagination.Page) (bool, error) {
  // ...
}
```