restraintd: fetch_http premature error cleanup fix

Fixed premature error cleanup for http fetcher.
restraintd: https support

Libsoup supports https but restraintd accepted http uris only, changed the
if statement to accept both.
Include the run levels and add the service instead
Bump to newer version of libsoup which includes some important fixes.
new restraint_config_trunc to clear the configuration
Update ignoe list to latest third-party packages
set to task to NULL.
Allow a recipe to be cancelled.
fix copy_header to update Location base

Before this fix the clients were talking directly to the beaker
lab proxy.
Don't call restraint_queue_message directly.

If we read a recipe_url from the config file then use restraint_queue_message
Implement restraint_append_message.

Used when running in client mode, will send rest requests back over the
open client connection using EOF and multipart encoding.
Change the heartbeat from 5 minutes to 1 minute

With the client connection we would like to time out sooner
Support for streaming data back to client

With this change the server supports having a connection open the entire
time the server is running the tests, all output and results will be fed
over that initial connection.
Update restraint client to use new streaming support

The connection from the client will now stay open during the entire execution
of the recipe and all results will be streamed back on that connection.

Tests that cause a reboot or panic are handled with a re-connect loop
which will keep trying to connect to the remote machine.  Once the machine
is back up it will continue the recipe where it left off.
Merge pull request #23 from sm00th/https_segfault

https segfault fix
Merge pull request #24 from p3ck/client_multipart

Client multipart
Clear error in recipe_handler_finish

Previously error was being cleared before we closed our connection to
the client which prevented us from propagating that error.