I don't see any obvious problems with your HDL. How is it failing?
If the Mux16 is failing, I suspect that you have a bad Mux.hdl. Rename the Mux.hdl to something like Mux.hdl.save and retest the Mux16. This will force the Hardware Simulator to use the built in Mux part.