DO NOT PULL THIS IN

I'm leaving this pull request here for you guys to review incrementally as this one might be kinda massive. I need to make changes to the edmx file as well so I have no way to test this until we wipe the database which I think we should do Wednesday.