Use the state instead of the state object directly.

If a state gets reset and you still hold a pointer to the previous,
incorrect, state object you'll operate on the wrong object. Using the
state to set/get objects and attributes you won't have this problem
since the state will always have the correct object.
Switch EXT* codes
Moved state reset to defered function
Updated tests
Corrected package ....
event: new package for event multiplexer
Fixed most of the tests
event: add some documentation
event: make Unsubscribe idempotent
event: make TypeMux zero value ready to use
all: use (blocking) event package instead of ethreact
ethchain: fix tests
eventer: remove package
ethreact: remove package
event: panic for duplicate type
added eth tester
Merge pull request #58 from fjl/feature/event

Blocking event package
Quick dirty peer update
arith test
ethlog: improve dispatch concurrency

This also fixes a deadlock in the tests.