wrap user's info into UserData
also add socket's id and 'confirmed' properties into UserData
it can retrieve geo-location information when page loaded
wrap geo-location data into a dict
also pass the geolocation when communicating
add timeout control, now after 1s, if still nobody wants to share, it will stop and report
change to confirmToSend and confirmToReceive events
now after one user chose not to share, the other paired user will be notified..
after two users confirmed, it will fire an event of start sending
make the users dictionary into a separate data structure
separate data structures into models.js
change 'betrayedSending' & 'betrayedReceiving' into 'betrayed'
use an id as a connection's identifier