* Add timeout to smo sockets
Without this sometimes an attempt at a connection hangs and completely stops the program (VERY annoying in fullscreen) in the recv function.
* Fix typo from previous commit
* Change smo timeout to 5
* Chartkey generation
* Simfile filehash generation
* Read filehash on NSCRSG. Add FLU packets and friendlist vectors. Add
getserverversion method. Send chartkey, filehash and rate on start request.
* Use filehash to find the selected song if it is not empty.
* Friendlist update broadcast.
* Send note row size if it's bigger than 1
* Used for chartkey generation
* Define the ReportScore function with numNotes when WITHOUT_NETWORKING is defined