Initial commit. Working version of basic library with a test program.