Quantity initializer on a table doesn't know about units

Apologies if this is a dupe of something, but I don't see something else obviously applicable (#2169 is related but not the same).  The following behavior is strange, and I *think* a bug:

```
>>> t = table.Table(data=randn(5,2),names=['a','b'])
>>> t['a'].unit = u.Mpc
>>> t['a']*u.dimensionless_unscaled
<Quantity [-0.76422154,-0.76376306, 1.33499563,-0.65637698,-1.05384279] Mpc>
```
Ok, that makes sense: it properly recognizes the table has a unit, and correctly converts it to the right kind of quantity.  But the surprise comes here:
```
>>> u.Quantity(t['a'])
<Quantity [-0.76422154,-0.76376306, 1.33499563,-0.65637698,-1.05384279]>
```
That does *not* pick up the units from the table.  This is very counter-intuitive.  I would have expected this to be the right way to get quantities from tables, absent #1839 .

This would be replaced by #1839, presumably, but given that it's now milestoned for 1.0, I think it's important for ``u.Quantity(t['a'])`` to give back the right kind of Quantity in 0.4. 

cc @taldcroft @mhvk