public IHttpActionResult Clone([FromUri] int port)
        {
            ContextSwitch.Go();

            CloneResult result;

            using (var session = new Session())
            {
                session.Log("CLONE: Creating clone.");
                var cloneFactory = new CloneFactory();
                result = cloneFactory.Create(port);
                session.Log("CLONE: Clone complete.");
            }

            return Ok(result.ConnectionInfo);
        }
        public IHttpActionResult Clones()
        {
            ContextSwitch.Go();

            DiscoveredClones result;

            using (var serverSession = new Session())
            {
                serverSession.Log("CLONES: Discovering clones.");
                var cloneFactory = new CloneFactory();
                result = cloneFactory.Discover();
                serverSession.Log("CLONES: Results: " + JsonConvert.SerializeObject(result));
                serverSession.Log("CLONES: Clone discovery complete.");
            }

            return Ok(result.CloneInfos);
        }