Uniformize Table and NDData meta behavior

As discussed on the Astropy developer hangout, this makes the behavior of ``Table.meta`` and ``NDData.meta`` uniform. Specifically:

* Any valid mapping can be passed to the ``meta=`` argument

* Once ``Table`` and ``NDData`` are instantiated, ``meta`` can not be set (only updated)

@Cadair - I reused some of the commits from your pull request. Can you confirm that this version would be adequate for Sunpy?