Updated documentation to be much better!