changing how hardware modules and constants are handled
adding missing hwmodules.py