Add missing specs.

Basically I've gone through and
 * Added some makefile targets for dialyzer
 * Added specs to many functions, though not all of them

I've got a couple of style concerns around:
 * repeated [#1](https://github.com/tmcgilchrist/riak_control/pull/new/type_specs#L1R44) [#2](https://github.com/tmcgilchrist/riak_control/pull/new/type_specs#L3R42) definitions of types . Not sure if or how I can extract these so they are shared.
 * some functions aren't covered yet, and
 * there are 3-4 warnings when running dialyzer.

Since this is my first attempt at adding specs for an Erlang project, I'd love some feedback on whether I'm going in the right direction.