starting to remove prototypal dependency of some module