Add a shebang
Add support for re-exec without loosing IRC connection

This allows you to execute a new version of the bot, while preserving
the connection to the IRC server.

To make this possible, the IRC connect method of Cinch is overridden. If
bot.config.fd is specified, it tries to use the socket for that file
descriptor. Otherwise, the original connect is used.

The environment variable IRC_SERVER_FD is read into bot.config.fd on
process start. After a successful connection, the environment variable
is set to the file descriptor number of the connection.

On the signal HUP, the process will call exec with its own name and
arguments, and pass on the open socket.
Make the override of Cinch a bit cleaner

 - Use fd redirection for the socket, instead of disabling close_on_exec
 - Set the environment variable for the fd right before re-exec, instead
   of after connection.
Specify ruby in the re-exec command

Previously, the re-exec only worked if the process was spawned by
executing the script directly (using the shebang). This makes it work
when executing by it using ruby explicitly.
Fix Cinch state after re-exec

The Cinch module stores some IRC state, such as joined channels.
Previously, this would not be correct after a re-exec. This commit does
two things to set the correct state after a re-exec.

 - IRC registration messages is stored in an environment variable. After
   a re-exec they are parsed again. This sets the connection state.
 - The NAMES command is sent to all the channels in the configuration.
   This ensures that the state of each channel is correct.
Adding MIT license.
Merge pull request #1 from trygveaa/re-exec

Add support for re-exec without loosing IRC connection
Using readable_github_webhooks from Github.
Cleaning up the receive events process a bit.

The code of itera-bot now knows very little about the events it
receives. It will mostly just query the Renderer and ask if it can
render the received event. The exception to this is for push-events, as
we don't want to notify about empty pushes.
Adding logging of received events.