anchor.diff:            UserDataContainer = this.UserDataContainer.ToLower()
             UserDataTable = this.UserDataTable.ToLower()
           }
  -            
  -        
  -    /// Returns a new copy with altered storage connection string.
  +     
  +    /// Return a new copy with altered Id.
  +    member this.WithId(id) =
  +        { this with Id = id }
  +
  +    /// Return a new copy with altered runtime Queues, Containers and Tables.
  +    member this.WithRuntimeFolders(runtimeQueue, runtimeTopic, runtimeContainer, runtimeTable, runtimeLogsTable, userDataContainer, userDataTable) =
  +        { this with
  +            RuntimeQueue      = runtimeQueue
  +            RuntimeTopic      = runtimeTopic
  +            RuntimeContainer  = runtimeContainer
  +            RuntimeTable      = runtimeTable
  +            RuntimeLogsTable  = runtimeLogsTable
  +            UserDataContainer = userDataContainer
  +            UserDataTable     = userDataTable }
  +
  +    /// Return a new copy with altered storage connection string.
       member this.WithStorageConnectionString(conn : string) =
           { this with StorageConnectionString = conn }
   
  -    /// Returns a new copy with altered service bus connection string.
  +    /// Return a new copy with altered service bus connection string.
       member this.WithServiceBusConnectionString(conn : string) =
           { this with ServiceBusConnectionString = conn }
   
  
positive.code: 
  
      /// Append Configuration.Id on all values.
      member this.WithAppendedId =
          let withId s = sprintf "%s%05d" s this.Id
          { this with
  
negative.code: open Microsoft.ServiceBus
  open Microsoft.ServiceBus.Messaging
  open Microsoft.WindowsAzure.Storage
  open Nessos.Vagabond
  open System
  open System.Collections.Concurrent
  open System.Reflection
  open MBrace.Azure
  
  /// Exception indicating invalid Configuration.
  type InvalidConfigurationException (msg : string, inner) =
      inherit Exception(msg, inner)
  
  [<AutoSerializable(false)>]
  type ClientProvider (config : Configuration) =
      let acc = lazy CloudStorageAccount.Parse(config.StorageConnectionString)
      do System.Net.ServicePointManager.Expect100Continue <- false
      do System.Net.ServicePointManager.UseNagleAlgorithm <- false
  
      member __.TableClient = acc.Value.CreateCloudTableClient()
      member __.BlobClient = 
          let client = acc.Value.CreateCloudBlobClient()
          client.DefaultRequestOptions.ParallelOperationThreadCount <- System.Nullable(4 * System.Environment.ProcessorCount)
          client.DefaultRequestOptions.SingleBlobUploadThresholdInBytes <- System.Nullable(1L <<< 23) // 8MB, possible ranges: 1..64MB, default 32MB
          client.DefaultRequestOptions.MaximumExecutionTime <- Nullable<_>(TimeSpan.FromMinutes(10.))
  