Alikins/vr test DO NOT MERGE

Not quite ready experimental I had laying around, rebased to master.

Try to not log json errors on http error codes that we likely do not
have valid json from.

Try to handle more http errors.

Improve the detail in the exceptions.