using a named variable in place of bare literal '6' magic number
making it a little more obvious (for future eyeballs perusing this code) that check_for_keypress always does a NON-blocking read
do not use a separate integer to track 'buffer size' -- instead just check the length of the string directly. this happens to fix github issue 4, but an upcoming cleanup will go even further
previously, use of self.__response_buffer was problematic in several ways. if unparseable data entered the buffer, things went bad. also, there was some bad 'packet counting' using self.__first_valid_packet that over-complicated things