libevent2-based refactor

I _think_ I've cleanly merged without too many mistakes, but more testing is needed.  I've also included the platform-cros.c code, but if you'd prefer for me to make it generic and overlay that outside of your upstream repo, I can do that too.  I'm also sure I didn't update all the docs, dot file, etc extensively, but I'm curious to know what your thoughts are!  This isn't the prettiest of refactors, but I believe it made things a fair bit more reliable.

Additionally, I'll clean up the document mentioned in one of the change logs so I can publish it externally.

Thanks!
will