def load_class(class_name):
    """Load class using introspection.

    :param class_name: fully qualified class name including package and module
    name(s). E.g. 'fp_methods.html5.result_handler.HTML5Result' will load a
    class 'HTML5Result', contained in the module 'result_handler' from the
    package 'fp_methods.html5'.
    :type class_name: str
    :return: Class object. It is possible to access attributes and functions
    of the returned class by instantiating the class and using the Python
    built-in function 'getattr()'. Example:
        k = kls() # create instance of class 'kls'
        attrib = getattr(k, 'attribute') # access attribute
        result = getattr(k, 'method')()  # run method
    """
    parts = class_name.split('.')
    module = ".".join(parts[:-1])
    m = __import__(module)
    for comp in parts[1:]:
        m = getattr(m, comp)
    return m