New buffer class hierarchy ( yes, I will get it right one day )