Fix issues Improve transaction API Make hardcoded constants configurable Make error messages consistent and always add context info