File reading/Parse interlock changes

This is assuming that the return value for success is 0. It doesn't look
like that is the case yet so I can't say whether this works or not. Also
this is using the
x + y = 2, 3x -2y = 3 format.