fix models - add custom primary keys

added primary keys to models, composite_primary_keys gem, composite primary key for Exercise
changed enum-arrays to symbols, validations now work