protocol events, extended protocol basics, fast protocol basics. removed async read because of various problems. various other stuff