http://getcomposer.org/doc/01-basic-usage.md#package-versions
~5.3 translates to >= 5.3.0, < 6.0

Ah! for my internal project I have it set to ~5.5. I think you've already mentioned some things that I've overlooked for >= 5.3 compatibility. I'll update those.