Add visual setting save/restore
Add user configuration features
Add module files and update documentation