pull promise socket read catch handler out to prevent stack explosion
more types and fix socket interface file