Only use after_initialize to disable columns

Both tests pass without overriding columns(). The only thing I can
find which behaves differently is that when:

- setting a disabled attribute
- saving it
- reloading the object

...when columns() is overridden the column doesn't show up on reload,
and when it isn't overridden the column does appear. In both cases the
attribute can be read after reloading, unsurprisingly.

Since this seems like an edge case and doesn't actually prevent anyone
using the disabled columns either way (which is presumably what we're
trying to do here), let's do less and stop overriding columns() as well.