def environment(name=:production)
      name = name.to_sym

      unless @environments[name]
        raise(UnknownEnvironment,"unknown environment: #{name}",caller)
      end

      return @environments[name]
    end
def environment(name=:production)
      name = name.to_sym

      unless @environments[name]
        raise(UnknownEnvironment,"unknown environment: #{name}",caller)
      end

      return @environments[name]
    end
Creates a new project using the given configuration file.

 @param [String] root
   The root directory of the project.

 @raise [ConfigNotFound]
   The configuration file for the project could not be found
   in any of the common directories.


 @param [Symbol, String] name
   The name of the environment to use.

 @return [Environment]
   The environment with the given name.

 @raise [UnknownEnvironment]
   No environment was configured with the given name.

 @since 0.3.0