Implement sending updated file info if there is data to send.
Move CRC32 checksum function into patch_packets.

This will be needed later when sending file data and it makes more
sense to put it here since patch_server already imports patch_packets.
Add full_path and incorporate relative_path into patch_file.

This makes it easier to open patch files when sending data later
since the server will not have to change directory or calculate
the path multiple times.
Add missing Little Endian conversions to send functions.
Implement sending file packet info and completion.

Also fix full path filenames as they were missing the actual filename
on the end. Move the declaration of iterators up so that clients can
be be checked for additional writes if we're sending them files.
Keep track of the client's patch steps in their structure.
Rewrite logic for handling select with connections.

This should make the connection handling a little more robust as
the server will now handle disconnects and resetting fd_max with
some actual logic involved.
Implement sending files to client.

This doesn't work yet! All of the packets seem to be sent out correctly
but the client crashes upon receipt of the send file packet (though
it saves the file with a .patch extension). Investigating the cause.