Revising model to support better API semantics, testing liberally