Make the example a bit clearer.
Only set an ERROR state if there's an ERROR handler.
Tests passing again with latest fixes.