             print("Cannot specify both bundleID(-b) and PID(-p) at the same time.")
             throw SniperError.InvalidArgument
         }
+
         if let pid = pid {
+
             let apps = NSWorkspace.sharedWorkspace().runningApplications
             let filtered = apps.filter {
                 Int($0.processIdentifier) == pid

            self.bundleId = value
        }
    }
    private func terminate(app:NSRunningApplication) {
        print("Terminating \(app.bundleIdentifier ?? UnknownBundleID): \(app.processIdentifier) ...")
        app.terminate()

        }
    }
}

class Shoot {

    var pid:Int?

    var bundleId:String?

}

extension Shoot: OptionCommandType {

    var commandName:String {
        return "shoot"
    }

    var commandShortDescription:String {
        return "Terminate the specified running app. You need to pass the exact bundleID or PID."
    }

    var commandSignature:String {
        return ""
    }

    func setupOptions(options: Options) {
        options.onKeys(["-p", "--pid"]) { [unowned self] _, value in
