move service::fact and system::user defined types under new module defined_type