archive: Implement ApplyLayer directly

Rather than calling out to tar we use the golang tar parser
to directly extract the tar files. This has two major advantages:

1) We're able to replace an existing directory with a file in the
   new layer. This currently breaks with the external tar, since
   it refuses to recursively remove the destination directory in
   this case, and there are no options to make it do that.

2) We avoid extracting the whiteout files just to later remove them.
Fix change detection when applying tar layers

The default gnu tar format has no sub-second precision mtime support,
and the golang tar writer currently doesn't support that either.
This means if we export the changes from a container we will not
get zeron in the sub-second precision field when the change is applied.

This means we can't compare that to the original without getting a
spurious change. So, we detect this case by treating a case where the
seconds match and either of the two nanoseconds are zero as equal.
Re-enable TestApplyLayer

With the previous two changes we now pass this test.
Updated Introduction link

Previously the introduction link pointed to www.docker.io. That
did not seem to make a lot of sense to me so instead I pointed it
at:

http://www.docker.io/learn_more/
please, don't use 30% of the screen for whitespace, and thus compress the examples so they are ~80 chars wide - the output of 'docker ps' and 'docker images' becomes needlessly unreadable
Reimplement lxc-ps

Instead of calling lxc-ps in top endpoint, we reimplement it by
calling ps and filter for pids running in a given container.
ApplyLayer: Fix TestLookupImage

The TestLookupImage test seems to use a layer that contains
/etc/postgres/postgres.conf, but not e.g. /etc/postgres.

To handle this we ensure that the parent directory always
exists, and if not we create it.
Fix and re-enable TestGetContainersTop
Update binaries.rst

Along with the kernel requirement, you need a working copy of lxc.  When trying to start using "/docker -d", received error 'initapi: exec: "lxc-start": executable file not found in $PATH'
Merge branch 'use-complete-width-of-browser-for-docs' of github.com:SvenDowideit/docker into SvenDowideit-use-complete-width-of-browser-for-docs
Improvement upon @SvenDowideit suggestion to make the docs use full-width
Moved the style comments source to into the .less file
Bump to v0.7.2
Merge pull request #3233 from crosbymichael/bump_0.7.2

Bump to 0.7.2
Change version to 0.7.2-dev
Merge pull request #3232 from dhrp/Full-width-documentation

Full width documentation
Merge pull request #3207 from alexlarsson/fix-applylayer

Re-enable TestApplyLayer and make it work
Added warning when browsing master. & no longer hides alternative versions.
Fix "go tool cover" detection to only add -cover and -coverprofile if we both have cover support in Go, and if we have the cover tool downloaded
Purge more hack references to Go 1.1.2 (since it requires backported archive/tar patches now, and Go 1.2 is _widely_ packaged successfully)
update fedora doc: docker and docker-io conflict

Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>