The lowering module in rustc

This work is ongoing. This section will be filled in once some of it has landed in rustc.