Use the official consul-api package.

Also:
 - Add (backward-compatible) support for a custom consul client config (i.e. token, hostname, port, etc.)
 - Move the set/del helpers onto the `ConsulKVCache` object
 - Update the tests
Pull prefix access and variable decls out of locked regions.

`prefix` never changes and so does not need to be in the locked regions.

Also:
 - Update whitespace to be more in-line with what I perceive as common go convention. Am I wrong?
Merge pull request #1 from betawaffle/use-official-api

Use Official Consul API Package