Cleanup buffer access
simplify code
Simplify object building; make sure buffer size fits alignment
add assert