refactor converters

In preparation for adding new definition and value sources (argparse, python modules, ...) I've refactored the converters.  They're now sorted into to types: to string and from string.  Both types now have dispatch functions that will relieve clients of this module from having to find the appropriate converter manually.
the purpose of the function is to ensure that all the keys to dict are not unicode.  However, you wrote this function to address a bug in python 2.6.4.  I cannot see that we use it anymore.  Perhaps we should just remove it.