added Buffer block pooling and fixed Buffer bug