I find your explanation very good, I learned new things. I only want to point out that the quoted part of your post is not entirely true. There can be some limitations on phonemes' position or environment in some languages.
For example, the Polish phoneme /ɨ/ never occurs word-initially.
Ah yes, the exceptions. Thank you for the addition.