remove allocation from read() and process() methods
python wrappers for call-by-reference methods
cleanup
composition