new API to validate without firing events
update README and demo