Added Factor Types

Factor types creation and tweaked factor to be associated to factor
types