add option to generate shell-safe passwords

basically excludes characters that might be dangerous if used in shell.
many passwords generated by trocla may end up in some sort of bash
scripts (initscripts, sourced shell variables, etc) which may yeld
problems with default trocla random generator.

this can be now changed either in troclarc (with "shellsafe: true")
or on (ie. "trocla create foo plain '{ length: 32, shellsafe: true}'").
puppet will convert all values to string, so we need to convert it back to integer for ranges

ie. for this to work:

$short_and_safe = {
                    'shellsafe' => 'true',
                    'length' => 6, # THIS WILL BE STRING!
                  }
$x = trocla('foo', 'plain', $short_and_safe)
notify { "test: $x": }
Merge branch 'safechars' of https://github.com/asquelt/trocla into asquelt-safechars

Conflicts:
	lib/trocla.rb
Merge branch 'asquelt-safechars'