Address issue #108

This should address most of #108. I haven't added tests yet, and it doesn't cover the entire status API, but I should be able to add those soon.
It's odd for a freeing function to return a value. In order to guard against freeing an already-freed StatusList, we should simply be returning.