Fixes #324 by generating the ETag as a final step within `this.respond()`, reordering tests