def rget(source, keys):
    """Get a value from nested dictionaries.
       Params
       ------
       * source (dict)   : (possibly) nested dictionary
       * keys (str, list): a string of nested keys seperated by "." or the
                           resulting list split from such a string
       Returns
       -------
       (Any) The final value

       Examples
       -------
       >>> org = {'ops': { 'manager': "Joe Smith"}, 'manager': "Bill Jones"}
       >>> rget(org, "manager")
       'Bill Jones'
       >>> rget(org, "ops.manager")
       'Joe Smith'
    """

    # Return None for empty keys
    if not keys or not source: return

    # split {keys} strings by "."
    if isinstance(keys, str):
        keys = keys.split(".")

    # get the first key from the list
    this_key = keys.pop(0)

    # recursively call rget() if there are keys remaining
    if len(keys):
        return rget(source.get(this_key, {}), keys)

    # if this was the last key, return the final value
    else:
        return source.get(this_key)