Pulling U of M customizations in

Rather than me maintaining a separate repo. I'll try to keep up-to-date with your repository and the changes there.

I have used a clean fork and re-added my code in blocks to make it easier to look through.

cheers.