diff --git a/build/source/actors/file_access_actor/output_structure.f90 b/build/source/actors/file_access_actor/output_structure.f90
index 8cf218d7e7fd36d00aa13db83cd17b1ff80af334..54db360ba1057b8dad0f7a3eba91930ab9431b06 100644
--- a/build/source/actors/file_access_actor/output_structure.f90
+++ b/build/source/actors/file_access_actor/output_structure.f90
@@ -689,9 +689,9 @@ subroutine allocateDat_rkind_nSteps(metadata,varData,nSnow, nSoil, &
       case(iLookVarType%midSnow); allocate(varData%var(iVar)%tim(iStep)%dat(nSnow),stat=err)
       case(iLookVarType%midSoil); allocate(varData%var(iVar)%tim(iStep)%dat(nSoil),stat=err)
       case(iLookVarType%midToto); allocate(varData%var(iVar)%tim(iStep)%dat(nLayers),stat=err)
-      case(iLookVarType%ifcSnow); allocate(varData%var(iVar)%tim(iStep)%dat(0:nSnow),stat=err)
-      case(iLookVarType%ifcSoil); allocate(varData%var(iVar)%tim(iStep)%dat(0:nSoil),stat=err)
-      case(iLookVarType%ifcToto); allocate(varData%var(iVar)%tim(iStep)%dat(0:nLayers),stat=err)
+      case(iLookVarType%ifcSnow); allocate(varData%var(iVar)%tim(iStep)%dat((nLayers-nSoil)+1),stat=err)
+      case(iLookVarType%ifcSoil); allocate(varData%var(iVar)%tim(iStep)%dat(nSoil+1),stat=err)
+      case(iLookVarType%ifcToto); allocate(varData%var(iVar)%tim(iStep)%dat(nLayers+1),stat=err)
       case(iLookVarType%parSoil); allocate(varData%var(iVar)%tim(iStep)%dat(nSoil),stat=err)
       case(iLookVarType%routing); allocate(varData%var(iVar)%tim(iStep)%dat(nTimeDelay),stat=err)
       case(iLookVarType%outstat); allocate(varData%var(iVar)%tim(iStep)%dat(maxvarfreq*2),stat=err)
@@ -731,9 +731,9 @@ subroutine allocateDat_rkind(metadata,varData,nSnow,nSoil,err,message)
     case(iLookVarType%midSnow); allocate(varData%var(iVar)%dat(nSnow),stat=err)
     case(iLookVarType%midSoil); allocate(varData%var(iVar)%dat(nSoil),stat=err)
     case(iLookVarType%midToto); allocate(varData%var(iVar)%dat(nLayers),stat=err)
-    case(iLookVarType%ifcSnow); allocate(varData%var(iVar)%dat(0:nSnow),stat=err)
-    case(iLookVarType%ifcSoil); allocate(varData%var(iVar)%dat(0:nSoil),stat=err)
-    case(iLookVarType%ifcToto); allocate(varData%var(iVar)%dat(0:nLayers),stat=err)
+    case(iLookVarType%ifcSnow); allocate(varData%var(iVar)%dat((nLayers-nSoil)+1),stat=err)
+    case(iLookVarType%ifcSoil); allocate(varData%var(iVar)%dat(nSoil+1),stat=err)
+    case(iLookVarType%ifcToto); allocate(varData%var(iVar)%dat(nLayers+1),stat=err)
     case(iLookVarType%parSoil); allocate(varData%var(iVar)%dat(nSoil),stat=err)
     case(iLookVarType%routing); allocate(varData%var(iVar)%dat(nTimeDelay),stat=err)
     case(iLookVarType%outstat); allocate(varData%var(iVar)%dat(maxvarfreq*2),stat=err)
@@ -773,9 +773,9 @@ subroutine allocateDat_int(metadata,varData,nSnow, nSoil, &
       case(iLookVarType%midSnow); allocate(varData%var(iVar)%tim(iStep)%dat(nSnow),stat=err)
       case(iLookVarType%midSoil); allocate(varData%var(iVar)%tim(iStep)%dat(nSoil),stat=err)
       case(iLookVarType%midToto); allocate(varData%var(iVar)%tim(iStep)%dat(nLayers),stat=err)
-      case(iLookVarType%ifcSnow); allocate(varData%var(iVar)%tim(iStep)%dat(0:nSnow),stat=err)
-      case(iLookVarType%ifcSoil); allocate(varData%var(iVar)%tim(iStep)%dat(0:nSoil),stat=err)
-      case(iLookVarType%ifcToto); allocate(varData%var(iVar)%tim(iStep)%dat(0:nLayers),stat=err)
+      case(iLookVarType%ifcSnow); allocate(varData%var(iVar)%tim(iStep)%dat((nLayers-nSoil)+1),stat=err)
+      case(iLookVarType%ifcSoil); allocate(varData%var(iVar)%tim(iStep)%dat(nSoil+1),stat=err)
+      case(iLookVarType%ifcToto); allocate(varData%var(iVar)%tim(iStep)%dat(nLayers+1),stat=err)
       case(iLookVarType%parSoil); allocate(varData%var(iVar)%tim(iStep)%dat(nSoil),stat=err)
       case(iLookVarType%routing); allocate(varData%var(iVar)%tim(iStep)%dat(nTimeDelay),stat=err)
       case(iLookVarType%outstat); allocate(varData%var(iVar)%tim(iStep)%dat(maxvarfreq*2),stat=err)
diff --git a/config/configuration.py b/config/configuration.py
deleted file mode 100644
index 3faa35edf3e278dd5776660acad98d73225d64c8..0000000000000000000000000000000000000000
--- a/config/configuration.py
+++ /dev/null
@@ -1,215 +0,0 @@
-from distutils.command.config import config
-import json
-import os
-import math
-from os.path import exists
-from datetime import date
-
-"""
-Function to create the inital summa_actors_settings file
-"""
-def create_init_config():
-    Settings_file = { 
-        "Configuration": {
-            "controlVersion": "",
-            "simStartTime": "",
-            "simEndTime": "",
-            "tmZoneInfo": "",
-            "settingsPath": "",
-            "forcingPath": "",
-            "outputPath": "",
-            "forcingFreq": "",
-            "forcingStart": "",
-            "decisionsFile": "",
-            "outputControlFile": "",
-            "globalHruParamFile": "",
-            "globalGruParamFile": "",
-            "attributeFile": "",
-            "trialParamFile": "",
-            "forcingListFile": "",
-            "initConditionFile": "",
-            "outFilePrefix": "",
-            "vegTableFile": "",
-            "soilTableFile": "",
-            "generalTableFile": "",
-            "noahmpTableFile": ""
-        },
-        
-        "JobSubmissionParams": {
-            "cpus-per-task": 1,
-            "memory": "",
-            "job-name": "",
-            "account": "",
-            "numHRUs": 1,
-            "maxNumberOfJobs": 1,
-            "maxGRUsPerSubmission": 1,
-            "executablePath": ""
-            },
-
-        "SummaActor": {
-            "OuputStructureSize": 1,
-            "maxGRUPerJob": 1
-        },
-
-        "FileAccessActor": {
-            "num_vectors_in_output_manager": 1
-        },
-    
-        "JobActor": {
-            "FileManagerPath": "",
-            "outputCSV": "",
-            "csvPath": ""
-        },
-
-        "HRUActor": {
-            "printOutput": "",
-            "outputFrequency": 1
-        }
-    }
-    with open('Summa_Actors_Settings.json', 'w') as outfile:
-        json.dump(Settings_file, outfile, indent=2)
-
-"""
-Function that creates the paths for the slurm output and the netCDF data
-"""
-def create_output_path(outputPath):
-    print("The output path exists, now seperating this run by today's date")
-    today = date.today()
-    todays_date = today.strftime("%b-%d-%Y")
-    outputPath += "{}/".format(todays_date)
-    if not exists(outputPath):
-        os.mkdir(outputPath)
-    print("Directory Created. Now Creating sub directories for SLURM Data and NetCDF data")
-    outputNetCDF = outputPath + "netcdf/"
-    outputSlurm = outputPath + "slurm/"
-    outputCSV = outputPath + "csv/"
-    if not exists(outputNetCDF):
-        os.mkdir(outputNetCDF)
-    if not exists(outputSlurm):
-        os.mkdir(outputSlurm)
-    if not exists(outputCSV):
-        os.mkdir(outputCSV)
-    
-    # need to add the file name to outputSlurm
-    # The job will not be submitted without a file name
-    outputSlurm += "slurm-%A_%a.out"
-    
-    return outputNetCDF, outputSlurm, outputCSV
-
-
-"""
-Function to create the file manager for SummaActors,
-THis is a text file that is created from the settings in the Configuration section
-in the JSON file.
-"""
-def create_file_manager():
-    json_file = open("Summa_Actors_Settings.json")
-    fileManagerSettings = json.load(json_file)
-    json_file.close()
-    
-    # add the date for the run
-    outputPath = fileManagerSettings["Configuration"]["outputPath"]
-    if exists(outputPath):
-        outputNetCDF, outputSlurm, outputCSV = create_output_path(outputPath)
-        fileManagerSettings["Configuration"]["outputPath"] = outputNetCDF
-    else:
-        print("Output path does not exist, Ensure it exists before running this setup")
-        return -1
-    
-    fileManager = open("fileManager.txt", "w")
-    for key,value in fileManagerSettings["Configuration"].items():
-        fileManager.write(key + "    \'{}\'\n".format(value))
-    fileManager.close()
-
-    with open("Summa_Actors_Settings.json") as settings_file:
-        data = json.load(settings_file)
-        data["JobActor"]["FileManagerPath"] = os.getcwd() + "/" + "fileManager.txt"
-        data["JobActor"]["csvPath"] = outputCSV
-
-    with open("Summa_Actors_Settings.json", "w") as updated_settings:
-        json.dump(data, updated_settings, indent=2) 
-
-
-    print("File Manager for this job has been created")
-    return outputSlurm
-
-
-def create_caf_config():
-    json_file = open("Summa_Actors_Settings.json")
-    SummaSettings = json.load(json_file)
-    json_file.close()
-
-    numCPUs = SummaSettings["JobSubmissionParams"]["cpus-per-task"]
-
-
-    caf_config_name = "caf-application.conf"
-    caf_config = open(caf_config_name, "w")
-    caf_config.write("caf {{ \n  scheduler {{\n   max-threads = {}\n    }}\n}}".format(numCPUs))
-    caf_config.close()
-    
-    caf_config_path = os.getcwd()
-    caf_config_path += "/"
-    caf_config_path += caf_config_name
-    return caf_config_path
-
-
-def create_sbatch_file(outputSlurm, configFile):
-    json_file = open("Summa_Actors_Settings.json")
-    SummaSettings = json.load(json_file)
-    json_file.close()
-
-    numCPUs = SummaSettings["JobSubmissionParams"]["cpus-per-task"]
-    memory = SummaSettings["JobSubmissionParams"]["memory"]
-    jobName = SummaSettings["JobSubmissionParams"]["job-name"]
-    account = SummaSettings["JobSubmissionParams"]["account"]
-    numberOfTasks = SummaSettings["JobSubmissionParams"]["numHRUs"]
-    GRUPerJob = SummaSettings["JobSubmissionParams"]["maxGRUsPerSubmission"]
-    executablePath = SummaSettings["JobSubmissionParams"]["executablePath"]
-
-    jobCount = math.ceil(numberOfTasks / GRUPerJob - 1)
-
-    configPath = os.getcwd()
-
-    sbatch = open("run_summa.sh", "w")
-    sbatch.write("#!/bin/bash\n")
-    sbatch.write("#SBATCH --cpus-per-task={}\n".format(numCPUs))
-    sbatch.write("#SBATCH --time=24:00:00\n")
-    sbatch.write("#SBATCH --mem={}\n".format(memory))
-    sbatch.write("#SBATCH --job-name={}\n".format(jobName))
-    sbatch.write("#SBATCH --account={}\n".format(account))
-    sbatch.write("#SBATCH --output={}\n".format(outputSlurm))
-    sbatch.write("#SBATCH --array=0-{}\n\n".format(jobCount))
-    sbatch.write("gruMax={}\n".format(numberOfTasks))
-    sbatch.write("gruCount={}\n".format(GRUPerJob))
-    sbatch.write("offset=$SLURM_ARRAY_TASK_ID\n")
-    sbatch.write("gruStart=$(( 1 + gruCount*offset ))\n")
-    sbatch.write("check=$(( $gruStart + $gruCount ))\n")
-    sbatch.write("if [ $check -gt $gruMax ]\n")
-    sbatch.write("then\n")
-    sbatch.write("    gruCount=$(( gruMax-gruStart+1 ))\n")
-    sbatch.write("fi\n\n")
-    sbatch.write("{} -g ${{gruStart}} -n ${{gruCount}} -c {} --config-file={}".format(executablePath, configPath, configFile))
-
-
-
-"""
-Funciton checks if the Summa_Actors_Settings.json file exists.
-If yes:
-    move on
-If no:
-    create it
-"""
-def init_run():
-    Summa_Settings_Path = './Summa_Actors_Settings.json'
-    if exists('./Summa_Actors_Settings.json'):
-        print("File Exists, What do we do next")
-        outputSlurm = create_file_manager()
-        configFile = create_caf_config()
-        create_sbatch_file(outputSlurm, configFile)
-        
-
-    else:
-        print("File Does not Exist and we need to create it")
-        create_init_config()       
-
-init_run()
\ No newline at end of file
diff --git a/config/create_client_config.py b/config/create_client_config.py
deleted file mode 100644
index 2de8f83a63e399a05cc58b827ca006eccae4eee8..0000000000000000000000000000000000000000
--- a/config/create_client_config.py
+++ /dev/null
@@ -1,27 +0,0 @@
-import json
-import sys
-
-def distributed_settings(hostname, port):
-    distributed_settings = {
-        "distributed_mode": True,
-        "hostname":hostname,
-        "port":port,
-        "total_hru_count": 5,
-        "num_hru_per_batch": 1,
-        "heartbeat_interval": 20,
-        "lost_node_threshold": 3
-    }   
-    return distributed_settings
-
-
-settings_dict = {
-    "Distributed_Settings": {}
-}
-
-hostname = sys.argv[1]
-port = sys.argv[2]
-
-
-settings_dict['Distributed_Settings'] = distributed_settings(hostname, int(port))
-with open('Summa_Actors_Settings.json', 'w') as summa_actors_settings_file:
-        json.dump(settings_dict, summa_actors_settings_file, indent=2)
\ No newline at end of file
diff --git a/config/create_summa_actors_config.py b/config/create_summa_actors_config.py
deleted file mode 100644
index 32ff9f448ba0ed994f8058d90fae89cc7d368589..0000000000000000000000000000000000000000
--- a/config/create_summa_actors_config.py
+++ /dev/null
@@ -1,97 +0,0 @@
-import json
-
-def distributed_settings():
-    distributed_settings = {
-        "distributed-mode": False,
-        "host":"localhost",
-        "port":4444,
-        "total_hru_count": 5,
-        "num_hru_per_batch": 1,
-        "heartbeat_interval": 20,
-        "lost_node_threshold": 3
-    }   
-    return distributed_settings
-
-def simulation_settings():
-    simulation_settings = {
-        "total_hru_count": 0,
-        "num_hru_per_batch": 0
-    }
-    return simulation_settings
-
-def summa_actor_settings():
-    summa_actor_settings = {
-        "OutputStructureSize": 250,
-        "maxGRUPerJob":        250
-    }
-    return summa_actor_settings
-
-def file_access_actor_settings():
-    file_access_actor_settings = {
-        "num_vectors_in_output_manager": 1
-    }
-    return file_access_actor_settings
-
-def job_actor_settings():
-    job_actor_settings = {
-        "FileManagerPath"       : "",
-        "controlVersion"        : "",
-        "simStartTime"          : "",
-        "simEndTime"            : "",
-        "tmZoneInfo"            : "",
-        "settingsPath"          : "",
-        "forcingPath"           : "",
-        "outputPath"            : "",
-        "forcingFreq"           : "",
-        "forcingStart"          : "",
-        "decisionsFile"         : "",
-        "outputControlFile"     : "",
-        "globalHruParamFile"    : "",
-        "globalGruParamFile"    : "",
-        "attributeFile"         : "",
-        "trialParamFile"        : "",
-        "forcingListFile"       : "",
-        "initConditionFile"     : "",
-        "outFilePrefix"         : "",
-        "vegTableFile"          : "",
-        "soilTableFile"         : "",
-        "generalTableFile"      : "",
-        "noahmpTableFile"       : "",
-        "outputCSV": False,
-        "csvPath": ""
-    }
-    return job_actor_settings
-
-def hru_actor_settings():
-    hru_actor_settings = {
-        "printOutput": True,
-        "outputFrequency": 1
-    }
-    return hru_actor_settings
-
-
-
-
-
-def create_config():
-    settings_dict = {
-        "DistributedSettings": {},
-        "SimulationSettings" : {},
-        "SummaActor"         : {},
-        "FileAccessActor"    : {},
-        "JobActor"           : {},
-        "HRUActor"           : {}
-    }
-    settings_dict['DistributedSettings'] = distributed_settings()
-    settings_dict['SimulationSettings'] = simulation_settings()
-    settings_dict['SummaActor'] = summa_actor_settings()
-    settings_dict['FileAccessActor'] = file_access_actor_settings()
-    settings_dict['JobActor'] = job_actor_settings()
-    settings_dict['HRUActor'] = hru_actor_settings()
-    with open('Summa_Actors_Settings.json', 'w') as summa_actors_settings_file:
-        json.dump(settings_dict, summa_actors_settings_file, indent=2)
-
-
-
-
-create_config()
\ No newline at end of file
diff --git a/config/summa-distributed/launch_client.sh b/config/summa-distributed/launch_client.sh
deleted file mode 100755
index 67d92e5bdbb896b83874454daa523696068a1301..0000000000000000000000000000000000000000
--- a/config/summa-distributed/launch_client.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/bash
-
-
-nohup apptainer exec --bind /gladwell:/gladwell \
-     --bind /scratch:/scratch \
-     --bind /home/kck540/Summa-Actors:/Summa-Actors \
-     /gladwell/kck540/container_files/summa_actors.sif \
-     /Summa-Actors/config/summa-distributed/run_client.sh 2>&1 > \
-     /scratch/kck540/Summa_Distributed_test/logs/`hostname`-client.out &
\ No newline at end of file
diff --git a/config/summa-distributed/launch_remote_clients.sh b/config/summa-distributed/launch_remote_clients.sh
deleted file mode 100755
index d517fd3bb77222323913d3221e0a628f297ea11b..0000000000000000000000000000000000000000
--- a/config/summa-distributed/launch_remote_clients.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/bash
-
-ssh kck540@simlab01.usask.ca /home/kck540/Summa-Actors/config/summa-distributed/launch_client.sh &
-ssh kck540@simlab05.usask.ca /home/kck540/Summa-Actors/config/summa-distributed/launch_client.sh &
-ssh kck540@simlab17.usask.ca /home/kck540/Summa-Actors/config/summa-distributed/launch_client.sh &
-ssh kck540@simlab18.usask.ca /home/kck540/Summa-Actors/config/summa-distributed/launch_client.sh &
\ No newline at end of file
diff --git a/config/summa-distributed/launch_server.sh b/config/summa-distributed/launch_server.sh
deleted file mode 100755
index 36859162dca095f19d954a7f28c2eebf979928fb..0000000000000000000000000000000000000000
--- a/config/summa-distributed/launch_server.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/bash
-
-
-apptainer exec --bind /gladwell:/gladwell \
-     --bind /scratch:/scratch \
-     --bind /home/kck540/Summa-Actors:/Summa-Actors \
-     /gladwell/kck540/container_files/summa_actors.sif \
-     /Summa-Actors/config/summa-distributed/run_server.sh > /scratch/kck540/Summa_Distributed_test/logs/`hostname`-server.out
\ No newline at end of file
diff --git a/config/summa-distributed/run_client.sh b/config/summa-distributed/run_client.sh
deleted file mode 100755
index a73b81cf42968cabb9ebd7b8749869695bfa8be6..0000000000000000000000000000000000000000
--- a/config/summa-distributed/run_client.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-export LD_LIBRARY_PATH=/Summa-Actors/bin/:/usr/local/lib
-cd /Summa-Actors/config/
-python3 create_client_config.py "simlab03" 4444
-cd /Summa-Actors/build
-make
-/Summa-Actors/bin/summaMain -c /Summa-Actors/config/Summa_Actors_Settings.json
\ No newline at end of file
diff --git a/config/summa-distributed/run_server.sh b/config/summa-distributed/run_server.sh
deleted file mode 100755
index c8d21db9ee5cf574a1b296d730f80de3b95c0f66..0000000000000000000000000000000000000000
--- a/config/summa-distributed/run_server.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-# !/bin/bash
-export LD_LIBRARY_PATH=/Summa-Actors/bin/:/usr/local/lib
-cd /Summa-Actors/build
-make
-/Summa-Actors/bin/summaMain -s -c /Summa-Actors/config/Summa_Actors_Settings.json
\ No newline at end of file
diff --git a/utils/Summa_Actors_Settings_backup.json b/utils/Summa_Actors_Settings_backup.json
deleted file mode 100644
index b6f659b78b9656388f1096c34e198aaeb978a2ce..0000000000000000000000000000000000000000
--- a/utils/Summa_Actors_Settings_backup.json
+++ /dev/null
@@ -1,32 +0,0 @@
-{
-    "DistributedSettings": {
-        "distributed-mode": true,
-        "host": "simlab03",
-        "port": 4444
-    },
-  
-    "SimulationSettings": {
-        "total_hru_count": 100,
-        "num_hru_per_batch": 20
-    },
-  
-    "SummaActor": {
-        "OuputStructureSize": 250,
-        "maxGRUPerJob": 20
-    },
-  
-    "FileAccessActor": {
-        "num_vectors_in_output_manager": 1
-    },
-    
-    "JobActor": {
-        "FileManagerPath": "/gladwell/SummaActorsSettings/fileManager.txt",
-        "outputCSV": false,
-        "csvPath": ""
-    },
-  
-    "HRUActor": {
-        "printOutput": true,
-        "outputFrequency": 500
-    }
-  }
\ No newline at end of file