adding documentation and updating the readme