<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/halcyon/runner/commands.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,9 +1,4 @@
 #!/usr/bin/env ruby
 
-require 'rubygems'
-require 'rubigen'
-
-require 'rubigen/scripts/generate'
-RubiGen::Base.use_application_sources!
-RubiGen::Base.sources &lt;&lt; RubiGen::PathSource.new(:custom, File.expand_path(File.join(File.dirname(__FILE__), '..', &quot;support/generators&quot;)))
-RubiGen::Scripts::Generate.new.run(ARGV, :generator =&gt; 'halcyon')
+require File.join(File.dirname(__FILE__), '..', 'lib', 'halcyon')
+Halcyon::Runner.run! ARGV</diff>
      <filename>bin/halcyon</filename>
    </modified>
    <modified>
      <diff>@@ -1,16 +1,30 @@
 # Partly modeled after Thin's Runner, found at
 # http://github.com/macournoyer/thin/tree/master/lib/thin/runner.rb
 
+require 'optparse'
+
 module Halcyon
   
   # = CLI Runner
   # Parse options and start serving the app
   class Runner
     
+    autoload :Commands, 'halcyon/runner/commands'
+    
     # Make sure that the Halcyon.config hash is setup
     Halcyon.config ||= Mash.new(Halcyon::Application::DEFAULT_OPTIONS)
     
-    def initialize(argv=ARGV)
+    class &lt;&lt; self
+      
+      # Runs commands from the CLI; foregoes actually running the app
+      def run!(argv=ARGV)
+        Commands.send(argv.shift, argv)
+      end
+      
+    end
+    
+    # Sets up the application to run
+    def initialize
       if Halcyon.config[:logger]
         Halcyon.logger = Halcyon.config[:logger]
       else</diff>
      <filename>lib/halcyon/runner.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>0543566fb3c463d471bff60521e90b36efbbcdc0</id>
    </parent>
  </parents>
  <author>
    <name>Matt Todd</name>
    <email>chiology@gmail.com</email>
  </author>
  <url>http://github.com/mtodd/halcyon/commit/32559974b4e68e3ebf6e6c1c17b7d5e474ff4bbb</url>
  <id>32559974b4e68e3ebf6e6c1c17b7d5e474ff4bbb</id>
  <committed-date>2008-03-25T17:52:52-07:00</committed-date>
  <authored-date>2008-03-25T17:52:52-07:00</authored-date>
  <message>Added command line parsing and processing of commands:
* Added init which will initialize a new Halcyon application.
* Added start which will run rackup or thin passing along params to start the Halcyon application.</message>
  <tree>b23fc68379f65658f06ba69aa6e2696c9e349557</tree>
  <committer>
    <name>Matt Todd</name>
    <email>chiology@gmail.com</email>
  </committer>
</commit>
