handle 404, 204, 205, and 304 status codes better

closes #6 and #7