Redo attributes system, add support for saving and loading, move settings classes around