buffer: WIP convert checks to new standard

Have had a discussion about how/which values should be coerced and when
they should throw. Here those are being standardized.