                 mode = .Version
             }
 
-        case .Switch(.chdir):
+        case .Switch(.Chdir):
             switch try cruncher.peek() {
             case .Some(.Name(let name)):
                 chdir = name

            }
        }
        enum TheSwitch: String {
            case chdir = "--chdir"
            case v = "-v"
        }

        case Mode(TheMode)

        if let mode = Crunch.TheMode(rawValue: arg) {
            return .Mode(mode)
        }
        
        if let theSwitch = Crunch.TheSwitch(rawValue: arg) {
            return .Switch(theSwitch)
        }
        
        guard !arg.hasPrefix("-") else {
            throw CommandLineError.InvalidUsage("Unknown argument: \(arg)", .Imply)
        }
        return .Name(arg)
    }

    mutating func pop() throws -> Crunch {
