def route
			model = Persistence.get(@controller.to_sym)
			# TODO if reset, reset Persistence?
			model = Persistence.get(@model) if @model.is_a?(Symbol)
			unless model
				model = Mousevc.factory(@model).new
				Persistence.set(@controller.to_sym, model)
			end

			view = View.new(:dir => @views)

			controller = Mousevc.factory(@controller).new(
				:view => view,
				:model => model,
				:router => self
			)
			controller.send(@action)
		end
def route
			model = Persistence.get(@controller.to_sym)
			# TODO if reset, reset Persistence?
			model = Persistence.get(@model) if @model.is_a?(Symbol)
			unless model
				model = Mousevc.factory(@model).new
				Persistence.set(@controller.to_sym, model)
			end

			view = View.new(:dir => @views)

			controller = Mousevc.factory(@controller).new(
				:view => view,
				:model => model,
				:router => self
			)
			controller.send(@action)
		end
Creates a new +Mousevc::Router+ instance

 @param options [Hash] expects the following keys:
 	- :controller => [String] name of default controller class
 	- :model => [String] name of default model class
 	- :action => [Symbol] method to call on default controller
 	- :views => [String] relative path to views directory

 Routes by:

 1. creating an instance of the current controller in the +@controller+ attribute
 1. creating an instance of the current model in the +@model+ attribute
 1. creating a new or finding the desired model
 1. passing that controller that model instance, a view instance, and an instance of +self+
 1. sending the controller the current action in +@action+