tweaks
ignore IDE files
reformat to PSR conventions
add missing documentation
basic unit test