Introduce Signature object for functions