improve etag control for res.send

closes #1435
closes #2129