@zmoazeni no worries, you're not coming off as critical. When I originally wrote this I took care to leave end-user APIs the same, which definitely had an adverse effect on code quality. I'll try to revisit my design decisions ASAP and I also look forward to hearing your thoughts.