Actually, it'd be better to get the user to pass in an arbitrary initial size, and then we just round it up to the next power of 2.