     
     // MARK: - Execution
     
-    func prepForExecution(arguments: NSDictionary, options: Options) {
+    func prepForExecution(arguments: NSDictionary, options: Options) { // TODO: Add final modifier once possible
         self.arguments = arguments
         self.options = options
     }

    
    // MARK: - Options
    
    func optionsAccountedFor() -> Bool { // Add final modifier once possible
        self.handleOptions()
        
        if self.showHelpOnHFlag() {

        self.options.onFlags(flags, block: block)
    }
    
    func onKey(key: String, block: OptionsKeyBlock?, usage: String = "", valueSignature: String = "value") { // TODO: Add final modifier once possible
        self.onKeys([key], block: block, usage: usage, valueSignature: valueSignature)
    }
    
    func onKeys(keys: [String], block: OptionsKeyBlock?, usage: String = "", valueSignature: String = "value") { // TODO: Add final modifier once possible
        let nsFlags = keys as NSArray
        let comps = nsFlags.componentsJoinedByString(", ")
        let firstPart = "\(comps) <\(valueSignature)>"
