Checkpoint for collaboration

The leadership service endpoints have been defined so that others can begin writing against the API. Currently everything else is stubbed out.
Merge branch 'master' into leadership
Implemented changes from reviews.

- Mostly godoc tautological comments.
- Reorganized imports.
- Moved params from apiserver/leadership to apiserver/params namespace.
- Removed bulk oriented calls from client API as they are not yet needed.
- Annotated errors from making facade calls in the client API.
- Now checking that stubbed-out functions are being called.
- Now checking that service and unit tags are correct.
- Cleaned up error messages.
- Upon starting, the lease manager was not checking existing leases for expiration.
- Giving the lease expiration test slightly more wiggle-room in regards to timing.
- Added TODO in state.go to reflect that leasemanager should eventually be peeled off.
- Added tests to the apiserver layer to test authorizer errors.
Added unit-tests for authentication.

There were previously no unit-tests for the apiHandler which provides authentication for most service endpoints. These tests were previously implicit in the full-stack integration tests which were usually performed.
Merge remote-tracking branch 'refs/remotes/origin/master' into leadership
Removed additional test registration.
Merge remote-tracking branch 'refs/remotes/origin/master' into leadership

Conflicts:
	cmd/jujud/machine.go
Merge pull request #1277 from katco-/leadership

Leadership (take 2)



(Review request: http://reviews.vapour.ws/r/592/)