class ConfigurationError(Exception):


class Configurable:

    ## Init ##
    def __init__(self):

    ## Configuration
    def config(self):
    def setting(self, name, default=NoDefault):
    def hasSetting(self, name):
    def defaultConfig(self):
    def configFilename(self):
    def configName(self):
    def configReplacementValues(self):
    def userConfig(self):
    def printConfig(self, dest=None):
    def commandLineConfig(self):
def addCommandLineSetting(name, value):
def commandLineSetting(configName, settingName, default=NoDefault):