Slight restructuring so to avoid variable name clashes
Update todos and document new option
Add auto update option and improve parameter validation and handling