Convert kickstart userdata to cloud-config, and take ssh-keys as params

Will require https://github.com/theforeman/foreman/pull/1586
Using an unprivileged user by default is a good practice and I don't think we should muck with the default behaviors of cloud-init.  I'm not opposed to an option to do it I guess, although I'd rather users modify or create their own user data template if they want to do something like that.