Release 2.4.0

Support for customisable hooks added in #144