beautify
bug fixing
adding unit tests for PHP