Heavy Changes

resolves #8

This was supposed to be a small trivial fix, but ended up being rather large.

### response.go

Is now refactored so that the actual PB structures get passed directly through.

### riakpbc.go

Has been broken out by duty as per http://docs.basho.com/riak/latest/references/apis/protocol-buffers/

1. riakpbc.go contains the object/key operations.
2. query.go contains the query operations.
3. server.go contains the server operations.
4. bucket.go contains the bucket operations.

### Options

Where applicable there is a final opts parameter which takes in the Rpb...Req struct as a parameter, such as FetchObject().  This allows all the optional parameters to be set.

There may be a smarter way to do this, like a SetOpts(opts interface{}) method, and then check and set the options that way.  Will ponder this later once your new connection changes are merged in.

### Example

I added and tweaked the `example/example.go` file to the top of the main test file as ExampleConn() so it shows up as a concrete example in `go doc`.

### README

I removed the inline documentation and set a link reference to godoc.org.  Added a notice about the API breaking due to changes.

### Bugs

I caught a few more minor bugs and fixed them.