simple BDD framework