Hiblet/NewZopa01 — pull request #39 by Hiblet (2014-04-07 16:22:38+00:00)
Title: Fixed closed Replace orders working; Fixed bad order status's for Replace Orders; Added Expire() function to close market on exiration date; Made GTD container local to the market;

FIXED: Market.cs
-- Replace orders that had qty dropped to below the fill level were being
-- worked. Now orders are worked if they have openQty, or rejected.

FIXED: Market.cs
-- OrderStatus for replaced orders was wrong, now corrected.

FIXED: Market.cs
-- Replace orders needed their reference fields blanked on success.

CHANGED: Market.cs
-- GTD's now locally contained in the market object.
-- Added TriggerGTD() to expire GTD orders from local container.
-- Accept() and Open() will now only work if Expiration date is in future.
-- Added Expire(), to expire the whole market.
-- Changed dropDayOrders() to expireOrders() and added a SystemText param
-- so that the function is more generalised, and used more often.
-- Added getAllOrders() for Expire() to retrieve orders for this market.

CHANGED: MarketManager.cs
-- Comply with GTD container moving locally.
-- Now, if market is Open/Accept state, checks the expiration date and
-- expires the market if appropriate.
-- Removed expire() and triggerGTD(), as now in Market.cs

CHANGED: Order.cs
-- Added some string codes.
-- Replace orders are now checked for internal consistency like D's.

CHANGED: OrderContainers.cs
-- GTDRegistry becomes local object GTDContainer.

CHANGED: OrderSubscriptionManager.cs
-- Imported orders now only go to PENDING state if there are no errors,
-- else they are rejected.

CHANGED: Orders.js
-- Account is now sent with Cancels and Replaces. Cancels should ignore,
-- but Replaces need the account to build the replacement order.
-- Changed scrapeSymbolAndSideByID() to scrapeDetailsByID() and included
-- the account field.