fleshed out the functionality and wrote the readme