New bcp_server and bot_mk1 fixes.

The majority of this pull request is the bcp_server, the class which listens for new connections on port 64500 and on connection, creates a new bot_mk1 attached to the connection and adds to the simulation. This is tested and working well.

Creation and testing of the bcp_server class exposed some bugs in bot_mk1, including a failing to check for a valid socket before closing it and risky thread management. They are corrected in this request as well.