def set_templates_dir
        input = gets.chomp.strip
        root_path = input.sub(/\/\w*\/*$/, '')
        case
        when input.downcase == "b"
          jumpstart_menu
        when input.downcase == "x"
          exit_normal
        when File.directory?(input)
          puts "\n  A directory of that name already exists, would you like to set it as your template directory anyway? (Nothing will be copied or removed.)".yellow
          puts "  Yes (" + "y".yellow + ") or No (" + "n".yellow + ")?"
          set_templates_dir_to_existing_dir(input)
        when File.directory?(root_path)
          begin
            Dir.chdir(root_path)
            Dir.mkdir(input)
            files_and_dirs = FileUtils.sort_contained_files_and_dirs(JumpStart.templates_path)
            puts "\nCopying existing templates to #{input}"
            files_and_dirs[:dirs].each {|x| FileUtils.mkdir_p(FileUtils.join_paths(input, x))}
            files_and_dirs[:files].each {|x| FileUtils.cp(FileUtils.join_paths(JumpStart.templates_path, x), FileUtils.join_paths(input, x)) }
            JumpStart.templates_path = input.to_s
            JumpStart.dump_jumpstart_setup_yaml
            puts "\n  Transfer complete!".green
            puts "\n  The directory " + input.green + " has been set as the JumpStart templates directory."
            jumpstart_menu
          rescue
            puts "  It looks like you do not have the correct permissions to create a directory in #{root_path.red}"
          end
        else
          puts "  Couldn't find a directory of that name. Try again.".red
          set_templates_dir
        end
      end
def set_templates_dir
        input = gets.chomp.strip
        root_path = input.sub(/\/\w*\/*$/, '')
        case
        when input.downcase == "b"
          jumpstart_menu
        when input.downcase == "x"
          exit_normal
        when File.directory?(input)
          puts "\n  A directory of that name already exists, would you like to set it as your template directory anyway? (Nothing will be copied or removed.)".yellow
          puts "  Yes (" + "y".yellow + ") or No (" + "n".yellow + ")?"
          set_templates_dir_to_existing_dir(input)
        when File.directory?(root_path)
          begin
            Dir.chdir(root_path)
            Dir.mkdir(input)
            files_and_dirs = FileUtils.sort_contained_files_and_dirs(JumpStart.templates_path)
            puts "\nCopying existing templates to #{input}"
            files_and_dirs[:dirs].each {|x| FileUtils.mkdir_p(FileUtils.join_paths(input, x))}
            files_and_dirs[:files].each {|x| FileUtils.cp(FileUtils.join_paths(JumpStart.templates_path, x), FileUtils.join_paths(input, x)) }
            JumpStart.templates_path = input.to_s
            JumpStart.dump_jumpstart_setup_yaml
            puts "\n  Transfer complete!".green
            puts "\n  The directory " + input.green + " has been set as the JumpStart templates directory."
            jumpstart_menu
          rescue
            puts "  It looks like you do not have the correct permissions to create a directory in #{root_path.red}"
          end
        else
          puts "  Couldn't find a directory of that name. Try again.".red
          set_templates_dir
        end
      end
Sets the path for templates to be used by JumpStart.
 Copies templates in the existing template dir to the new location.
 The folder specified must not exist yet, but it's parent should.