Fixed output of http status in access log

There was a following case:
Client sent a request. Server received only a part of request and had
already known that request cannot be processed (either bad request, or
some internal error or something else). Server sent some response for
Client. Client got response, interrupted sending of request and
shutdowned socket. Thevoid tried to recive the rest of request, got an
error of reading from the closed socket, decided that Client went away
before request had processed and printed 499 http status.

The behaviour for that case was changed:
If Client gets whole response from Server, the resposne's http status
will be printed in access log instead of 499.
v0.7.0.11
Merge pull request #19 from iderikon/master

Fixed output of http status in access log
connection: call async_read() from want_more_impl() only if there is remaining data.
buffered_request_stream reworked.

- 'last chunk' logic fixed.
  If request size was multiple of chunk_size, handler received
  real last chunk without last_chunk flag.

- on_chunk() method is called from within single thread.

- internal m_state is cleared before on_chunk() call.
  Before if handler calls try_next_chunk() from on_chunk() method
  it leads to infinite recursion.

- want_more() call after on_chunk() must rely on actual remaining data size.
  If content length is multiple of chunk size, try_next_chunk_internal() call
  with last chunk's data will produce excess want_more() call, that may lead
  to actual read from socket and get 'End of file' error.
reply's send_error() method fixed.

According to the documentation about the method in comment section
in stream.hpp send_error() is a shortcut for:
* ioremap::http_response response(type);
* send_headers(std::move(response), boost::asio::const_buffer(),
* std::bind(&reply_stream::close, reply, std::placeholders::_1));

Before it called send_headers() method with close_impl() callback and
close() that led to another close_impl() call.
connection: clear m_content_length on next request.
connection: terminate connection on invalid url and if appropriate handler is not found.
connection: unnecessary code removed.
Version bump 0.7.1.0
Merge pull request #21 from shindo/devel

Bug fixes
Buffered_request_stream is reworked.

Fixed bug: on_chunk will be called only if client asks next chunk.
Client is considered to wait first chunk after on_request is called.

On_data method is redesigned. The input buffer is handled by loop
according to invariant: m_data is not ready to be processed at the
beginning of each iteration. M_data is ready to be processed means
either m_data size equals to m_chunk_size or m_data contains last
request data.

The iteration of loop is:
If client is ready to get next chunk, we will obtain as much data as we
can, then if m_data is ready to be processed we will call on_chunk.
Otherwise means we is collecting next chunk in background.

Background collecting works as follows:
We will obtain data until either one byte is left to fill the chunk or
one byte is left to obtain last request data. It allows us to initiate
on_data call later, by calling want_more in try_next_chunk, in order to
run on_chunk in thevoid thread.
send_reply() with status code reworked.

Now send_reply(int code) manually constructs http_response and
calls send_reply(http_response) method.

Previously send_reply(int code) method called send_error() method,
which defers close() method call.

send_reply() methods should send response to the client and stop request
processing as soon as possible.
This may be done by calling send_headers() and close() methods of the
underlying reply stream.

close() method sets special flag 'm_close_invoked' that stops handler's
methods invocation and defers close_impl() method call that actually
closes connection with the client (or reuses the existing one to process
next request).

Thus, send_reply() methods must not defer close() method call.

By now send_error() method is used internally when request handler
is not yet constructed (headers parsing failed, invalid URL, missing handler)
and close() method's call delay works fine.
Merge pull request #22 from iderikon/master

Buffered_request_stream is reworked.
Merge pull request #23 from shindo/send-reply-fixup

send_reply(int code) method's behaviour restored.
Version bump 0.7.2.0
Merge pull request #24 from shindo/v0.7.2.0

Version bump 0.7.2.0
swarm: Make it compilable.
swarm: Fix Blackhole's deprecation warnings.