Implementing #9 PHP 5.3 support

The biggest downside to this is that I have to do the JsonSerializable shenanigans, but truthfully I think it's a reasonable tradeoff considering the widespread use of PHP 5.3 still.