kubernetes and systemd unit file support

some refactoring to support 3 file types