Remove redundant data in buffer objects

* store field info of data
Add smoother velocity calculation
Refactor smooth velocity calculation
Add garbage monitoring and collection
Unclean copy (implementing rigid bodies)