adhere to common conventions
change header and license
update .gitignore
replace ternary operator by get()