Refactor new-pogo for unit-testing
This MR prepares the new-pogo branch to be ready for unit-testing. It does not add any tests yet, as that would make the MR to big.
Changes:
- PEP8
- Create settings file and remove hardcoded settings
- Make more environment sanity checks (check for LXC base container and required apt packages)
- Rework argument parser for more clear messages
- Add new options for: lvm-volume-group, debug messages
- Add tmux support (thanks to Rutger)
- Ask user confirmation when executing long or dangerous options
- Use logger instead of print (where possible)
- Create os3pogo module which holds all Python logic apart from the pogo entrypoint
Bug fixes:
- Remove missing cidr_to_netmask function
- Rework shelve DB files so that they can be properly deleted on destroy
- List tmux windows instead of sessions
- Rename aux folder to xen (aux is a reserved folder name)