Hi,
The Brainsocket object is a recursive object because of the line "this.connection.BrainSocket = this;" in BrainSocket.js
connection has a BrainSocket property which has in return another connection object.
This creates a recursive object.
I removed this line on my local version of BrainSocket and it fixed the problem. Not sure yet if other functions depend on it!
Thanks for fixing it !