Extracts a list of words from the inputted text, parsing
    out non-alphanumeric characters and splitting camel 
    humps to build the list of words
    
    :param      text            <str>
    
    :return     <str>
    
    :usage      |import projex.text
                |print projex.text.words('TheQuick, TheBrown Fox.Tail')

def words(text):
    """
    Extracts a list of words from the inputted text, parsing
    out non-alphanumeric characters and splitting camel 
    humps to build the list of words
    
    :param      text            <str>
    
    :return     <str>
    
    :usage      |import projex.text
                |print projex.text.words('TheQuick, TheBrown Fox.Tail')
    """
    stext = nativestring(text)
    if not stext:
        return []

    # first, split all the alphanumeric characters up
    phrases = EXPR_PHRASE.findall(stext)

    # second, split all the camel humped words
    output = []
    for phrase in phrases:
        output += EXPR_WORD.findall(phrase)

    return output