Add CLI tool
This is the first version of a shell CLI tool. All methods should be supported already but the smart function equivalents are limited to a few common tasks.
There are many things that can be reviewed before endorsing this merge request. Here are some:
- Structure: functions are split into very small but reusable parts, causing a lot of jumps
- Several naming conventions are used in the script, this is in order to avoid collisions with those only used internally
- Due to bash limitations, we need to avoid nested subshells with the current structure; the current style does this by using a lot of global variables and function calls
- Limitations: for example more powerful functions such as multiple A records for a single name are not supported
- Assumptions: do we want to do convenient assumptions such as updating an A record if it already exists when adding?
All this said, adding functions is really fast now that the essentials and conventions are in place.