Improve script

- add command line switches for most of the settings
- improve `--help` and usage
- add more flexibility