TarFilter: Fix leak of tmpfiles

We were leaking the temporary directory that we create in TarFilter,
because the "tmpDir, err := ioutil.TempDir()" call overrides the
tmpDir in the outer scope with a new locally scoped variable.
This means tmpDir is always "" when the cleanup function is called.

Also, we did not call the atExit() function if CmdStream had an
error early on.

On errors in CmdStream(),
Show devicemapper status in "docker info"

This shows the current global diskspace use in "docker info"
devmapper: Use a smaller blocksize for the thin-pool

As per the thin provisioning docs for creating the pool:

   $data_block_size gives the smallest unit of disk space that can be
   allocated at a time expressed in units of 512-byte sectors.
   $data_block_size must be between 128 (64KB) and 2097152 (1GB) and a
   multiple of 128 (64KB). $data_block_size cannot be changed after the
   thin-pool is created. People primarily interested in thin provisioning
   may want to use a value such as 1024 (512KB). People doing lots of
   snapshotting may want a smaller value such as 128 (64KB).

The switch from 512 (which we used before) to 128 (recommended above
for lots of snapshoting) means a simple container creation (based on the
mattdm/fedora:f19 image) adds 1 MB of diskspace rather than 3.6.
This seems more in tune with how docker is typically used.
Devmapper: Mount images readonly when calculating changes

There is no need to have this be writable, and there is a chance
that e.g. atime updates will cause writes to the image which is
bad for disk use wrt sharing between all containers.
Remove race condition caused by double-destroy in 2 tests
Don't add /.docker-id to the container filesystem
devmapper: Rename DeviceSetDM to DeviceSet
devicemapper: Add fixme
hack: fail tests if there are leftover temp files before or after
Merge remote-tracking branch 'alexlarsson/fix-tar-leak' into dm-correct
Merge remote-tracking branch 'alexlarsson/dm-readonly-images' into dm

Conflicts:
	devmapper/deviceset_devmapper.go
devmapper: rename deviceset_devmapper.go to deviceset.go
Merge pull request #2269 from alexlarsson/dm-blocksize

devmapper: Use a smaller blocksize for the thin-pool
Increase readbility of unit tests by using mkRuntime everywhere
hack: encode the name of the current test in temporary directories, for easier tracking
devmapper: the tests are fast enough that we no longer need a workaround to avoid timeouts
Merge branch 'dm' of ssh://github.com/dotcloud/docker into dm
devmapper: cleanup error reporting
Merge remote-tracking branch 'alexlarsson/dm-status' into dm

Conflicts:
	devmapper/deviceset.go
devmapper: clearer make the 'unknown base hash' error message more understandable