If HEAD request don't respond body

The following warning is avoided: "WARNING: sendResponseHeaders: being
invoked with a content length for a HEAD request""
Replace read-byes by pipe method

The InputStream#read method in read-bytes could theoretically read
less bytes than the amount requested, i.e., the out buffer could not
be written entirely.

Besides for huge files, we avoid creating a temporary buffer as big as
the file.
Return Last-Modified and Content-Length header

When using tools such as Livejs HEAD requests are made to check if the
resources(html, css, js files) are stale and if so they are reloaded.

Simpleton wasn't returning Last-Modified and Content-Lengh headers so
Livejs couldn't detect when resources have gone stale.
Merge pull request #5 from ogf/master

Fixes issue #4