Add more docs and some initial code