Initial commit
Add project boilerplate
Implement `addAssertion()`
Check if the assertion already exists in `addAssertion()`
Implement `extendAssertion()`
Implement `wrapAssertion()`
Change test file name
Base functionality done. Bump version to 0.1.0
Use `adhocFlags` if the `flags` name is not available
TODO: the `adhoc.super` flag

I need to see real-world use cases before I can decide how to
implement it.
Bugfix: in `wrapAssertion()`, if there isn't an error, don't throw it

Chai seems to panic and don't throw errors even in later language
chains when `undefined` is thrown in an assertion.
Add tests for extending and wrapping an assertion many times
Bump version to 0.1.1
Simplify the API by using one level of callback instead of nested

The problem of too many parameters is solved by putting all context
variables, including `obj`, `expect`, `assert` and `flag`, into a
single `ctx` parameter. Since we have more spaces now, the `expect()`
and `assert()` methods are no longer combined into one.
Directly bind `utils.flag()`, no need to create a wrapper function
Implement method `addSimple()`
Write README
Bump version to 0.2.0