Improve documentation and formating