add support for lists and transient fields. Kill getters/setters and make fields public