add last-modified/if-modified-since cache header processing

Fix #86

etag takes precedence