Merge pull request #1 from rhewett/map_refactor

Map runs now.
small tweaks now processes args
Changes to RegisteredFactoryBase
random changes to factory and cube
Added FileHeader and turned MapHeader into OrderedDict

Currently the Map meta object Meta is not case-insensitive.

I put the contents of MapHeader into FITSHeader working on the
principal of that is where the output case-insensitivity needs to be.

However people will expect that if they build a Map from a MapHeader then
they will expect its header to act like a FITSheader and be all Caps or
case insensitve. Above and beyond this all of Map is coded atm to use
lower case keys because they will be uppercased on read to MapHeader
which is no longer happening.
io header
stray changes
Refactored io header and map meta data

Removed deriivaties of file header all files supported by io must
return a deriv of FileHeader.
Also wrote a little wrapper around pyfits.write_to() for fast output.
Merge branch 'map_refactor' of github.com:Cadair/sunpy into map_refactor
Header changes and adding a io.write function
Add some docs and small tweaks
Merge branch 'map_refactor' of github.com:Cadair/sunpy into map_refactor

Conflicts:
	sunpy/map/map.py
Refixed loop.
Updated to use new map factory.