prototype implementation of Module class, which seems to be a good way to go forward