In order to support custom headers for various response types,
this commit adds a wrapper type, ResponseWrapper, which can service
all types of response in `bin`.
For paste objects, the preferred `Last-Modified` is used, so that caches
can compare their exact timings with the HEAD response when
revalidating.
For static objects, an `ETag` is used instead, based on the Cargo version
and git hash of the codebase at compilation time; a `build.rs` is used
for this.
cleaned up code and added a route for signifying code language
explicitly at `/p/<filename>.<ext>`
Also async-ified the server after upgrading Rocket to 0.5-rc1
Signed-off-by: Gunwant Jain <mail@wantguns.dev>