Pool

A Pool is a node that collects resources.

Drains can have four different activation modes:
 * 1) Automatic Pools fire once every time step (or once after every turn for Turn-Based Diagrams).
 * 2) Interactive Pools fire when a user activates it by clicking on it.
 * 3) Starting Pools fire once when a diagram starts running.
 * 4) Passive Pools only fire when triggered.

When a Pool fires it attempts to push or pull resources towards as specified by the Labels of all its input and output Resource Connections. It can be in four different push or pull modes:
 * 1) In 'pull any' mode it will pull any available resources up to amount specified by its inputs, even when there are not enough.
 * 2) In 'pull all' mode it will only pull resources when the amount specified by its inputs is available.
 * 3) In 'push any' mode it will push any available resources up to amount specified by its outputs, even when there are not enough.
 * 4) In 'push all' mode it will only push resources when the amount specified by its outputs is available.

A Pool in push any mode is marked with a 'p', in push all mode it is marked with 'p&'. However, for a Pool that has no inputs the 'p' is ommitted.

A Pool will communicate its state (the number of resources on it) through outgoing State Connections. These State Connections will have a value equal to the number of resources on the Pool, which can be modified by the Label of the State Connection.

Incoming Node Modifiers will change the state (the number of resources) of a Pool. This can be useful to represent scores.

