             self.routes.append(.Proxy(self.matcher(pattern, handler: handler)))
         }
     }
+    
     public func map(pattern: String, handler: RouteHandler) -> Void {
         dispatch_barrier_async(accessQueue) {
             self.routes.append(.Route(self.matcher(pattern, handler: handler)))

import Foundation

public class Routing {
    public typealias Parameters = [String: String]
    public typealias Completed = () -> Void
    
    public typealias ProxyHandler = (String, Parameters) -> (String, Parameters)
    public typealias RouteHandler = (Parameters, Completed) -> Void
    
    private enum RouteType {
        case Proxy((String) -> (ProxyHandler?, Parameters))

            routes = self.routes
        }
        
        if routes.count == 0 { return false }
        guard let components = NSURLComponents(URL: URL, resolvingAgainstBaseURL: false) else {
            return false
        }
        
