1071565 update eu

This isn't done. A bunch of other things need fixing.

Posting this for feedback before I go do a lot of work that might get ditched.

feedback?
Small optimization: Since you are using list comprehensions, it will built the list in memory before passing it to the dict function. I think that doing a generator comprehension for the inner thing would be just as fast in the "implemented in C" way, but it won't create temporary lists in memory. I'm pretty sure you can just remove the `[` on line 140 and the `]` on 141 to get that result.