ResourceParser refactor

There is a weird bug with the PayloadParser with the test commented out in test-ResourceParser.cc. Will fix it tomorrow. Please review this in the meanwhile.
The logic in this function could use a bit of comments but it otherwise its OK.