some heavy refactoring
added plugin example
respect middleware errors
using a context object now
fetch current state
expose api
get status
emit status
that
emit correct state
..status
deleted some unused files
merge / bumped version