Initial commit, has been tested to work (current tests are a little buggy because of asynchronousity).
added license