public static void Main(String[] args)
        {
            Contract.Requires(!ReferenceEquals(args, null));
            Contract.Requires(args.All(s => !String.IsNullOrWhiteSpace(s)));
            Contract.Requires(args.Length >= 2);
            Contract.Requires(File.Exists(args[1]));

            if (args.Length < 2)
            {
                Console.WriteLine("To start the PocketInvester Server use:");
                Console.WriteLine("./Server.exe <predictor name> <path to FIXML>");
                return;
            }
            Log.Write("PocketInvestor starting.");
            ServerClass server = new ServerClass(args[0], args[1]);

            if (args.Any(a => a.Equals("-genkeys")))
                server.GenerateKeyFiles();

            server.requestManager.StartServer();
        }