This is such a cool implementation. Would you be willing to do a write up about how you got the basic tabletop functionality working? I see on your acknowledgements page[0] you use NodeJS and ShareJS. I assume you do JSON object editing like the Hex example[1]?