Feature/misc improvements

@zdne Please review and merge. @smizell Any thoughts?

I am still thinking about how to reference and re-use already defined Member Types. 

Also, I have been thinking about `One of` and other than the issue of being able to be more DRY, it is actually the right way to do that type of thing. I don't think a more general type or a `discriminated_union` type adds much. You will still need to use some kind of Member Type Separator for groups of members.

Regardless, I think getting the following changes in the spec now would be best.
Are the square brackets around `Value Definition` a mistake?