Implement type-inferer

rename the module of type-inferer "TypeInferer" to "Typing"