This will bring the implementation in line with that of `Vec`. This is a breaking change. Relates to #131, #77.