1. A distributed gaming system, comprising: a communication bus; at least one first node, each including a first computer coupled to the communication bus; at least one first service oriented software executing in the first computer of each first node, the first service oriented software including at least one high-level function and a first service oriented protocol, the first service oriented protocol being configured to negotiate service messages over the communication bus, the first service oriented software being configured to selectively: publish the at least one high-level function; provide the at least one high-level function upon receiving a request to consume the at least one high-level function; enable execution of the at least one high-level function upon receiving a request for execution; perform a call back upon receiving a request to consume or execute the at least one high-level function, and return a reply subsequent to receiving a request for execution of the at least one high-level function; at least one second node, each including a second computer coupled to the communication bus, and at least one second service oriented software executing in the second computer of each second node, the second service oriented software including at least one function call and a second service oriented protocol configured to negotiate service messages over the communication bus, the second service oriented software being configured, upon execution of the at least one function call, to selectively: subscribe to or consume the published or provided at least one high-level function; request that the at least one first node execute the at least one high-level function; accept the reply subsequent to receiving a reply from the at least one first node, and accept the call-back upon receiving a call-back from the at least one first node.