the '-n' option is not standard so not present in all 'echo' implementations

and it's actually harmless to have an extra newline in the generated sourcecode
added targets to build both shared and static libraries + make it build on osx

tests are now optional and can be built&run using the 'tests' target (make tests)