Whitespace cleanup
Use magic consistent construct attribute.

This tells the type checker that all children classes must have the same
signature for the constructor.

See http://docs.hhvm.com/manual/en/hack.attributes.consistentconstruct.php
for more details.
Whitespace cleanup.
Update travis config to run tests as specified in the main readme
Ensure the result time is consistent across calls.
Merge branch 'master' into patch