New snake implementation and new engine module

Now the snake is more obejct oriented so that each client can
instantiate two snakes - one for the host one for the partner. The
game loop is controlled by the host and he emits the drawing info
to the server then the server sends a render message on which both
the players render the passed information. The input which is registered
on the partner is sent to the server and then the host recieves it and
updates the partner snake position.