Sanitized the BiddingAgent's init() and start() behaviour and the agentName interface.

The old version didn't follow our usualy conventions and did
everything in the start() function. Unfortunately it never did call
the MessageLoop's init() function which could have caused all sorts of
shutdown problems.

As for the agentName, it's now generated by the BiddingAgent based on
the serviceName with an option to overwrite for tests. This cleans up
the arguments to the start() function which, again, were not very
standard.
Amounts can now be converted back into a given scale.
JS Wrappers for the Amount class.
Bid struct which will replace the old json value objects.

This new structure includes the information from both json values
which should greatly simplify the process of applying bids.

This struct still needs to be integrated.
The BiddingAgent and the Router both uses the new Bids structure.
Example of a fixed priced bidding agent with a simple pacer.