[WIP] Clean up rollback

This adds a checking macro that provides detailed error messages and makes a bunch of global variables and functions members of the RollbackManager.  It also removes some dead code, moves type definitions to the header file, and passes some large values by reference.
Upper macros are added to string.h by formspec version pull