Updating methods to use buffers, adding tests, addressing feedback