consistent naming; documentation
keeping lazy bytestring