building a lite version of ActiveRecord from scratch