Reformat code
Add MIT license
Improve error handling