disambiguate symbols for Transl killing

I got stuck while trying to kill the `Transl` namespace, but these were the 'by-hand' changes I did before I got stuck. They get us closer so I think doing them will be helpful regardless.

Most were making longer names, but I also had to kill `Immed` (since there was another `Immed`in the other namespace). Originally I renamed it, but since them someone killed the last use of it.
Rename hphp/tools/gen-ext-hhvm to hphp/tools/bootstrap

gen-ext-hhvm actually contains three different
bootstrapping utilities:
* gen-ext-hhvm
* gen-infotabs
* gen-class-map

This move is just to give it a more contextually appropriate name.
Recover from C++ exceptions in AsioExternalThreadEvent::unserialize(), part1

AsioExternalThreadEvent::unserialize() may legally throw PHP exceptions.
When that happens, construction of PHP exceptions reenters VM, surprised
flag is checked and pending C++ exceptions may be thrown.

Let's make sure the event is properly destroyed. If it is not, the web
request will get stuck forever waiting for the finished event to finish.
Move external thread event queue logic from AsioSession to AsioExternalThreadEventQueue

External thread event queueing logic is big enough that it deserves its
own class. Move the code and rename members to better reflect the
underlying operations. Implementation is otherwise unchanged.
Recover from C++ exceptions in AsioExternalThreadEvent::unserialize(), part 2

AsioExternalThreadEvent::unserialize() may legally throw PHP exceptions.
When that happens, construction of PHP exceptions reenters VM, surprised
flag is checked and pending C++ exceptions may be thrown.

Let's make sure the queue of received events in runUntil() is not lost.
Move this responsibility to the AsioExternalThreadEventQueue.
Remove m_importMethToTraitMap from Class.

Its a temporary structure thats just used to help build the class.
Use it a local instead.
add timeout to test

One bad test shouldn't kill the whole run