Allow for arbitrary settings for specific repos

Refactor a little so that a repo type module can require arbitrary settings as opposed to just source and type.
Merge branch 'flex_options' into 'master'

Flex options

See merge request !8
fixing isos
Merge branch 'flex_options' into 'master'

Flex options

See merge request !9