added very initial draft, this will be for the pull request. All comments welcome! I'm sure people can find ways to improve it