Hi Myles,
All iRule events and code are executed regardless of which rule they were in, unless you explicitly disable an event or all events. If you select a pool in one rule and then later select a different pool in another rule, the last pool command wins. An iRule pool command will take precedence over the VS default pool.
For details on using event priority or disabling events, you can check the wiki pages:
http://devcentral.f5.com/wiki/default.aspx/iRules/priority
http://devcentral.f5.com/wiki/default.aspx/iRules/event
Aaron