WIP implement new/this support by having all functions return a tuple (this, result)