Closes#819
If a flow file is found to be zero-bytes:
If there is a non-empty backup, restore the backup and resolve
If there is no backup or it is also empty, resolve empty flow
If a flow file is found to be invalid json:
Log and resolve empty flow
The tests still use it in places - particular localfilesystem tests,
but those tests need to be redone with sinon stubbing in place and
not rely on real fs operations.