Added a bit more commenting and updated the README