Implement and test API Authentication

This implements API authentication for sharing and unsharing cookbooks.
It moves cookbook unsharing into the CookbookUploadsController so that
authentication may be isolated to only this single controller. This also
expands upon the ApiSpecHelpers module making the share_cookbook method
generate signed headers using Mixlib::Authentication to simulate a
request made by knife. Additionally there is now an unshare_cookbook
helper method that unshares a specified cookbook as an authenticated user.
Merge pull request #262 from opscode/api_authentication

API Authentication