Vikram,
Just curious :
How does the distribution logic of the Grid interfere with your test intent [ which is basically "I want to run my web application tests against different browser/version/Platform combinations ].
The distribution logic of the Grid is something that your tests should be agnostic. But if you are bent upon having your test run on all nodes, then on a simple level you should just constrain all nodes to just support maxSessions as 1.
That way the Grid will try and find out a new node that can take in an execution request. If none are available, the request just piles up in the Grid's request queue and picked up once a node is available for execution.