Allow nom to parse with no data left

This happens with testing a lot with testing. To get an int, you have to supply the actual int (let's say 1234 and some input afterwards.

This means that 1234fghfhbn is valid and will return the correct OType::IntType(1234) with fghfhbn as the remaining input. But 1234 by itself returns an error.