Make an alloc vmethod so that subclasses can override or call the default implementation when they want.