7.x emic 208

This set of changes is pretty massive, a code review may take well over a day. I recommend pulling it down and trying to break it, and reviewing the code on your local machine as github can handle these many changes without almost crashing.