Basic Socket class that implements stop and wait protocol, checksum, and
only basic functionality of the project