WIP Saving list of features in database

impressed:
- Types helped doing this refactoring with confidend (although
  overcoming some of the breakages was tricky, these tricky things would
have been runtime errors otherwise that would have required testing)
- Once you find out that you can save any data structure you want in a
varchar using derivepersistfield, very powerful (and stored in a
readable way, because it uses read and show to do it).

not sure:
extra type constructor for list of features in database field, because
[Something] can not be stored easily it seems.

todo:
Removing old boolean column is dangerous, needs to be done by hand. With
strong typing this does create a chicken and egg situation.
Refactoring - dead code eliminated