cpu: Add support for throttling the traffic generator

Add the parameter maxPendingRequests to the traffic generator. This
parameter controls the maximum number of outstanding memory
requests. Once this limit has been reached, the traffic generators
simply drops excess requests until a response has been received.

Traffic generators may check the return value of BaseGen::send() to
determine if a send request succeeded and retry the current address in
that case.
cpu: Don't count data if send failed in TrafficGen

Use the return value of send() to determine if a memory request was
unsuccessful. In that case, don't update the dataManipulated counter
(used to stop generating requests after a fixed amount of data has
been touched) and don't advance the linear generator to the next
address.