Manual memory management for interfacing with C
