added site_sshd::authorized_keys
modularize and standardize site_sshd:

 . move the setting of the xterm title to site_config::shell

 . change the xterm file resource to use standard source lines, switch to single
 quotes, quote mode, and line up parameters

 . move the mosh pieces into a site_ssh::mosh class and only include it if the
 right mosh variable is enabled, passing into the class the necessary hiera parameters

 . lint the site_ssh::mosh resources

 . change the authorized_keys class to accept the key parameter which is passed
 in from the main ssh class (but allow for out of scope variable lookup when the
 tag is passed)

Change-Id: Ieec5a3932de9bad1b98633032b28f88e91e46604
switch to own define for managing ssh keys

The problem with puppet's built-in ssh_authorized_key is that you can
purge unmanaged keys in a authorized_keys file. see
https://leap.se/code/issues/3010 for details.

Conflicts:
	puppet/modules/site_sshd/manifests/authorized_keys.pp

Change-Id: I640bf7ebc0f0f7fb19cc46feb4cb2702d6561a9b
Merge branch 'feature/authorized_keys' of /home/git/repositories/micah/leap_platform into develop