A python library for overloading functions on type and signature.