Replace urfave/cli with the kingpin[1] library.
It has slightly more sensible argument validation than the other Go libraries.
Additionally I've opted for removing the '-f / --file' flag in favour of positional arguments to commands.
A previous command like `kontemplate template -f somefile.yml` is now just `kontemplate template somefile.yml`. All other arguments remain the same.
[1]: https://github.com/alecthomas/kingpin
* renamed --limit to --include (-i)
* added --exclude (-e)
Kontemplate users can now explicitly include and exclude certain resource sets.
Excludes always override includes.
Closes#11
* Adds support for calling `kubectl replace` (necessary for resource types that do
not support `apply`).
* Sets `kubectl` context to whatever is defined in the cluster configuration file
This integrates support for actually calling out to `kubectl apply`.
A dry-run flag is implemented, too.
The `run` command has been renamed to `template`.
Adds a basic CLI structure with a single "run" command that takes a --file (-f)
and --limit (-l) flag.
--limit can be used to only output certain resource sets.
Closes#4