*: Use sha-512 digest format

Per appc/spec#8, we should be using sha-512 hashes for speed
cas: tweaks and added tests

Mostly addressed comments in https://github.com/coreos/rocket/pull/209
- errors should start with lowercase
- split out consts for hash prefixes/lengths
- added tests for ResolveKey
- added test to check for unexpected goroutines
- revert to panicking if we get unexpected input to blockTransform
cas: drop unused afterTest func
gitignore: include .DS_Store for osx users

https://www.aorensoftware.com/blog/2011/12/24/death-to-ds_store/
Merge pull request #301 from gdi2290/patch-1

gitignore: include .DS_Store for osx users
*: switch cas using first half of sha512

This changes the CAS to use only the first half of a SHA512 when
creating the keys to store images on disk. Similarly, rkt stage1 uses
only the first half of the sum when creating the directories for each
app image.

This is exposed slightly to stage0/run because it attempts to verify the
hash of the image. This should be revisited+cleaned up.
Merge pull request #290 from jonboulle/rckclmbr-sha512

*: sha256 -> sha512
pkg/tar: Create a function for single tar file extraction so it can be reused by
different tar extraction functions.
pkg/tar: Add overwrite option to ExtractTar.
pkg/tar: Add PathWhitelistMap to whitelist files for tar extraction.
pkg/tar: Add ExtractTarFileToBuf function to extract a single file to a byte slice.
cas: test: create a real tar.
cas: Change Index interface to return errors on Marshal and Unmarshal.
cas: Add function to extract the image manifest from an image in the store.
cas: Add ACIInfo store to save ImageManifest, related ImageID and import time
of every ACI in the store.
cas: add AppIndex to easily retrieve all ImageManifests ordered by app name.
cas: Add GetACI and GetACIWithImageID functions.

GetACIWithImageID return the ImageManifest of the ACI in the store with the
reqeusted ImageID.

GetACI returns the best ACI that matches the required app name and the provided
labels.
If there are multiple matching ACIs, returns the older one (the last uploaded
to the store).
pkg: add acirenderer package.