diff --git a/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C b/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C
index f6de0f0a85a5ce82ae18146e5fd5031be8e3b75f..7e266aa33f680cab1db5973bcdd49a54c6a388ff 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C
+++ b/src/finiteVolume/fields/fvPatchFields/derived/timeVaryingMappedFixedValue/timeVaryingMappedFixedValueFvPatchField.C
@@ -96,10 +96,8 @@ timeVaryingMappedFixedValueFvPatchField
      && mapMethod_ != "nearest"
     )
     {
-        FatalIOErrorInFunction
-        (
-            dict
-        )   << "mapMethod should be one of 'planarInterpolation'"
+        FatalIOErrorInFunction(dict)
+            << "mapMethod should be one of 'planarInterpolation'"
             << ", 'nearest'" << exit(FatalIOError);
     }
 
@@ -248,7 +246,8 @@ void Foam::timeVaryingMappedFixedValueFvPatchField<Type>::checkTable()
         // Reread values and interpolate
         fileName samplePointsFile
         (
-            this->db().time().caseConstant()
+            this->db().time().path()
+           /this->db().time().caseConstant()
            /"boundaryData"
            /this->patch().name()
            /"points"
@@ -356,7 +355,8 @@ void Foam::timeVaryingMappedFixedValueFvPatchField<Type>::checkTable()
             // Reread values and interpolate
             fileName valsFile
             (
-                this->db().time().caseConstant()
+                this->db().time().path()
+               /this->db().time().caseConstant()
                /"boundaryData"
                /this->patch().name()
                /sampleTimes_[startSampleTime_].name()
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorFieldTemplates.C b/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorFieldTemplates.C
index b12065fc168e304ea8fef2d54dc1d6943a98e090..1a3cb11434457d1c2e9e8d8041512378e626343a 100644
--- a/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorFieldTemplates.C
+++ b/src/finiteVolume/fields/fvPatchFields/derived/turbulentDFSEMInlet/turbulentDFSEMInletFvPatchVectorFieldTemplates.C
@@ -72,7 +72,8 @@ Foam::turbulentDFSEMInletFvPatchVectorField::interpolateBoundaryData
 
     fileName valsFile
     (
-        this->db().time().caseConstant()
+        this->db().time().path()
+       /this->db().time().caseConstant()
        /"boundaryData"
        /patchName
        /"0"
diff --git a/src/functionObjects/field/yPlus/yPlus.C b/src/functionObjects/field/yPlus/yPlus.C
index c328b3b0b85d9bd237da4e762f4681b14292a4fa..1b69f6601b4fc0254d3222f46975ec7a5fccdb76 100644
--- a/src/functionObjects/field/yPlus/yPlus.C
+++ b/src/functionObjects/field/yPlus/yPlus.C
@@ -137,12 +137,10 @@ bool Foam::functionObjects::yPlus::execute()
         const volScalarField::Boundary& d = nwd.y();
 
         // nut needed for wall function patches
-        const volScalarField::Boundary& nutBf = model.nut()().boundaryField();
+        tmp<volScalarField> tnut = model.nut();
+        const volScalarField::Boundary& nutBf = tnut().boundaryField();
 
-        // nuEff nu and U needed for plain wall patches
-        const volScalarField::Boundary& nuEffBf =
-            model.nuEff()().boundaryField();
-        const volScalarField::Boundary& nuBf = model.nu()().boundaryField();
+        // U needed for plain wall patches
         const volVectorField::Boundary& UBf = model.U().boundaryField();
 
         const fvPatchList& patches = mesh_.boundary();
@@ -167,9 +165,9 @@ bool Foam::functionObjects::yPlus::execute()
                     d[patchi]
                    *sqrt
                     (
-                        nuEffBf[patchi]
+                        model.nuEff(patchi)
                        *mag(UBf[patchi].snGrad())
-                    )/nuBf[patchi];
+                    )/model.nu(patchi);
             }
         }
     }
diff --git a/src/functionObjects/utilities/runTimeControl/runTimeControl.H b/src/functionObjects/utilities/runTimeControl/runTimeControl.H
index 19a2cb58995e0f0e2bae95a6e63a3347558e42e6..0b1daf347844ac8c5a75b39ca5cb164581b9326b 100644
--- a/src/functionObjects/utilities/runTimeControl/runTimeControl.H
+++ b/src/functionObjects/utilities/runTimeControl/runTimeControl.H
@@ -3,7 +3,7 @@
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
     \\  /    A nd           | Copyright (C) 2015-2016 OpenFOAM Foundation
-     \\/     M anipulation  |
+     \\/     M anipulation  | Copyright (C) 2016 OpenCFD Ltd.
 -------------------------------------------------------------------------------
 License
     This file is part of OpenFOAM.
@@ -25,7 +25,7 @@ Class
     Foam::functionObjects::runTimeControl
 
 Group
-    grpJobControlFunctionObjects
+    grpUtilitiesFunctionObjects
 
 Description
     Controls when the calculation is terminated based on satisfying
@@ -120,9 +120,6 @@ public:
         //- Execute, currently does nothing
         virtual bool execute();
 
-        //- Called when time was set at the end of the Time::operator++
-        virtual void timeSet();
-
         //- Calculate the runTimeControl and write
         virtual bool write();
 };
diff --git a/tutorials/combustion/chemFoam/gri/system/controlDict b/tutorials/combustion/chemFoam/gri/system/controlDict
index ff0400dd00ec546a690bad997bbe05a3d220632f..cb4c6ab7aa84fd7069823453e1f8e034d0994320 100644
--- a/tutorials/combustion/chemFoam/gri/system/controlDict
+++ b/tutorials/combustion/chemFoam/gri/system/controlDict
@@ -56,10 +56,11 @@ functions
 {
     sensitivityAnalysis
     {
-        functionObjectLibs  ( "libutilityFunctionObjects.so" );
+        functionObjectLibs  ("libfieldFunctionObjects.so");
         type                psiReactionsSensitivityAnalysis;
-        outputControl       outputTime;
-        enabled             true;
+        writeControl        writeTime;
     }
 }
+
+
 // ************************************************************************* //
diff --git a/tutorials/combustion/engineFoam/kivaTest/system/controlDict b/tutorials/combustion/engineFoam/kivaTest/system/controlDict
index 05b54d7de762691f086dbebaa794218b126f4e97..8418e8b269b73a068188d23d5a8ed226563051b6 100644
--- a/tutorials/combustion/engineFoam/kivaTest/system/controlDict
+++ b/tutorials/combustion/engineFoam/kivaTest/system/controlDict
@@ -55,9 +55,9 @@ functions
 {
     timeStep
     {
-        type coded;
+        type            coded;
         libs            ("libutilityFunctionObjects.so");
-        name setDeltaT;
+        name            setDeltaT;
 
         code
         #{
diff --git a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/controlDict b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/controlDict
index 8c02323f69a3675272ec3cabdcd56bec755956ca..40edfa5ea7a79a392e0298f92d78b3ce35bb194b 100644
--- a/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/controlDict
+++ b/tutorials/compressible/rhoPimpleFoam/laminar/sineWaveDamping/system/controlDict
@@ -57,8 +57,8 @@ functions
     fieldAverage
     {
         type            fieldAverage;
-        functionObjectLibs ("libfieldFunctionObjects.so");
-        outputControl   outputTime;
+        libs            ("libfieldFunctionObjects.so");
+        writeControl    writeTime;
         fields
         (
             U
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/controlDict
index 402a8fabdb0bfdb1eb8229719d0f1893963225b8..7a6cb60419f18357bbeeabf3a44adb6093003e8b 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/controlDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/externalCoupledMultiRegionHeater/system/controlDict
@@ -59,7 +59,7 @@ functions
     externalCoupled
     {
         // Where to load it from (if not already in solver)
-        functionObjectLibs ("libjobControl.so");
+        libs            ("libfieldControl.so");
 
         type            externalCoupled;
 
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/controlDict
index 27c6d67a8413ca13fb155188c7aebb279ac593d9..9ea87b6028da0fb5e7aab21190b316f3c3e4a07f 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/controlDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldCondensation/system/controlDict
@@ -56,19 +56,10 @@ functions
     H2O
     {
         type            scalarTransport;
-
-        functionObjectLibs ("libutilityFunctionObjects.so");
-
+        libs            ("libsolverFunctionObjects.so");
         resetOnStartUp  no;
-
         region cabin;
 
-
-        // employ schemes used by U to the scalar transport equation
-        // note: field name is given by the name of the function, in this case
-        // 'scalar1'
-        autoSchemes     no;
-
         fvOptions
         {
         }
@@ -77,9 +68,9 @@ functions
     fileUpdate
     {
         type                timeActivatedFileUpdate;
-        functionObjectLibs  ("libutilityFunctionObjects.so");
-        outputControl       timeStep;
-        outputInterval      1;
+        libs                ("libutilityFunctionObjects.so");
+        writeControl        timeStep;
+        writeInterval       1;
         region              cabin;
         fileToUpdate        "$FOAM_CASE/system/solverControls";
 
diff --git a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/controlDict b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/controlDict
index 12e3383b688740438509d7318a5ebcfd5bed17d0..07835724cf5bf8756a9556b5d77c2dc5f54fab02 100644
--- a/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/controlDict
+++ b/tutorials/heatTransfer/chtMultiRegionFoam/windshieldDefrost/system/controlDict
@@ -56,10 +56,10 @@ functions
     massFlux
     {
         type            faceSource;
-        functionObjectLibs ("libfieldFunctionObjects.so");
+        libs            ("libfieldFunctionObjects.so");
         enabled         yes;
-        outputControl   timeStep; //outputTime;
-        outputInterval  1;
+        writeControl    timeStep; //writeTime;
+        writeInterval   1;
         log             yes;
         valueOutput     no;
         source          patch;
diff --git a/tutorials/incompressible/pimpleFoam/channel395DFSEM/system/controlDict b/tutorials/incompressible/pimpleFoam/channel395DFSEM/system/controlDict
index 66503a3ad5c1f0a3e73ce101139bc36366b0e7f8..2d4b47d56da7d065ee87577e6ec7c5ea382df4c0 100644
--- a/tutorials/incompressible/pimpleFoam/channel395DFSEM/system/controlDict
+++ b/tutorials/incompressible/pimpleFoam/channel395DFSEM/system/controlDict
@@ -50,26 +50,26 @@ functions
     Q1
     {
         type            Q;
-        functionObjectLibs ("libutilityFunctionObjects.so");
-        outputControl   outputTime;
+        functionObjectLibs ("libfieldFunctionObjects.so");
+        writeControl    writeTime;
     }
     vorticity1
     {
         type            vorticity;
-        functionObjectLibs ("libutilityFunctionObjects.so");
-        outputControl   outputTime;
+        functionObjectLibs ("libfieldFunctionObjects.so");
+        writeControl    writeTime;
     }
     yPlus
     {
         type            yPlus;
-        functionObjectLibs ("libutilityFunctionObjects.so");
-        outputControl   outputTime;
+        functionObjectLibs ("libfieldFunctionObjects.so");
+        writeControl    writeTime;
     }
     fieldAverage1
     {
         type            fieldAverage;
         functionObjectLibs ( "libfieldFunctionObjects.so" );
-        outputControl   outputTime;
+        writeControl    writeTime;
         timeStart       8.5;
 
         fields
diff --git a/tutorials/incompressible/pisoFoam/les/motorBike/motorBike/system/runtimePostProcessing b/tutorials/incompressible/pisoFoam/les/motorBike/motorBike/system/runtimePostProcessing
index b331e95ac0a63fa786de9c697ca06ff730dfcaa2..ebdeafbdc095d9a9e830a82e81a9047163afb9f3 100644
--- a/tutorials/incompressible/pisoFoam/les/motorBike/motorBike/system/runtimePostProcessing
+++ b/tutorials/incompressible/pisoFoam/les/motorBike/motorBike/system/runtimePostProcessing
@@ -1,8 +1,8 @@
 postPro1
 {
     type            runTimePostProcessing;
-    functionObjectLibs ("librunTimePostProcessing.so");
-    outputControl   outputTime;
+    libs            ("librunTimePostProcessing.so");
+    writeControl    writeTime;
     output
     {
         name            image;
diff --git a/tutorials/incompressible/simpleFoam/pitzDaily/system/streamlines b/tutorials/incompressible/simpleFoam/pitzDaily/system/streamlines
index 83354b269d7fd427dce156c804ae975152803bf9..3ed986047c5c83dba4adbe8e39cf68314a6b89c8 100644
--- a/tutorials/incompressible/simpleFoam/pitzDaily/system/streamlines
+++ b/tutorials/incompressible/simpleFoam/pitzDaily/system/streamlines
@@ -14,6 +14,7 @@ nLines  10;
 start   (-0.0205 0.001  0.00001);
 end     (-0.0205 0.0251 0.00001);
 fields  (p k U);
+U       U;
 
 // Must be last entry
 #includeEtc "caseDicts/postProcessing/visualization/streamlines.cfg"
diff --git a/tutorials/incompressible/simpleFoam/simpleCar/system/controlDict b/tutorials/incompressible/simpleFoam/simpleCar/system/controlDict
index bfc34d3836e4571587759bc31cd6d0d413d47fc0..4e269979e35e58fc5fe7ae275bf3ed243c7bb1c2 100644
--- a/tutorials/incompressible/simpleFoam/simpleCar/system/controlDict
+++ b/tutorials/incompressible/simpleFoam/simpleCar/system/controlDict
@@ -49,32 +49,31 @@ functions
 {
     forceCoeffs1
     {
-        type        forceCoeffs;
-
-        functionObjectLibs ( "libforces.so" );
-        outputControl   outputTime;
-        writeFields true;
-
-        patches     (body);
-        pName       p;
-        UName       U;
-        rhoName     rhoInf;      // Indicates incompressible
-        log         true;
-        rhoInf      1;           // Redundant for incompressible
-        liftDir     (0 1 0);
-        dragDir     (1 0 0);
-        CofR        (3.5 0 0);   // Axle midpoint on ground
-        pitchAxis   (0 0 1);
-        magUInf     10;
-        lRef        4;           // Wheelbase length
-        Aref        1;           // Estimated
-        porosity    on;
+        type            forceCoeffs;
+        libs            ("libforces.so" );
+        writeControl    writeTime;
+        writeFields     true;
+
+        patches         (body);
+        p               p;
+        U               U;
+        rho             rhoInf;      // Indicates incompressible
+        log             true;
+        rhoInf          1;           // Redundant for incompressible
+        liftDir         (0 1 0);
+        dragDir         (1 0 0);
+        CofR            (3.5 0 0);   // Axle midpoint on ground
+        pitchAxis       (0 0 1);
+        magUInf         10;
+        lRef            4;           // Wheelbase length
+        Aref            1;           // Estimated
+        porosity        on;
 
         binData
         {
-            nBin        20;          // output data into 20 bins
-            direction   (1 0 0);     // bin direction
-            cumulative  yes;
+            nBin            20;          // output data into 20 bins
+            direction       (1 0 0);     // bin direction
+            cumulative      yes;
         }
     }
 }
diff --git a/tutorials/incompressible/simpleFoam/simpleCar/system/forceCoeffs b/tutorials/incompressible/simpleFoam/simpleCar/system/forceCoeffs
index 1c015984642af87b8752f6f3b3fa15b13f08449d..9e39522eaccc46e88991b7180b80833d1335a11b 100644
--- a/tutorials/incompressible/simpleFoam/simpleCar/system/forceCoeffs
+++ b/tutorials/incompressible/simpleFoam/simpleCar/system/forceCoeffs
@@ -8,34 +8,31 @@
 
 forceCoeffs1
 {
-    type        forceCoeffs;
-
-    functionObjectLibs ( "libforces.so" );
-
-    outputControl   outputTime;
-
-    writeFields true;
-
-    patches     (body);
-    pName       p;
-    UName       U;
-    rhoName     rhoInf;      // Indicates incompressible
-    log         true;
-    rhoInf      1;           // Redundant for incompressible
-    liftDir     (0 1 0);
-    dragDir     (1 0 0);
-    CofR        (3.5 0 0);  // Axle midpoint on ground
-    pitchAxis   (0 0 1);
-    magUInf     10;
-    lRef        4;        // Wheelbase length
-    Aref        1;        // Estimated
-    porosity    on;
+    type            forceCoeffs;
+    libs            ("libforces.so");
+    writeControl    writeTime;
+    writeFields     true;
+
+    patches         (body);
+    p               p;
+    U               U;
+    rho             rhoInf;      // Indicates incompressible
+    log             true;
+    rhoInf          1;           // Redundant for incompressible
+    liftDir         (0 1 0);
+    dragDir         (1 0 0);
+    CofR            (3.5 0 0);  // Axle midpoint on ground
+    pitchAxis       (0 0 1);
+    magUInf         10;
+    lRef            4;        // Wheelbase length
+    Aref            1;        // Estimated
+    porosity        on;
 
     binData
     {
-        nBin        20;          // output data into 20 bins
-        direction   (1 0 0);     // bin direction
-        cumulative  yes;
+        nBin            20;          // output data into 20 bins
+        direction       (1 0 0);     // bin direction
+        cumulative      yes;
     }
 }
 
diff --git a/tutorials/multiphase/MPPICInterFoam/twoPhasePachuka/system/controlDict b/tutorials/multiphase/MPPICInterFoam/twoPhasePachuka/system/controlDict
index 2adb4c682bfa9ac248001639351640132f5a35fb..b5c1fa8993c8b99c450fbb05a4cd5d28c608d3c7 100644
--- a/tutorials/multiphase/MPPICInterFoam/twoPhasePachuka/system/controlDict
+++ b/tutorials/multiphase/MPPICInterFoam/twoPhasePachuka/system/controlDict
@@ -57,11 +57,12 @@ functions
 
     minMax
     {
-      type fieldMinMax;
-      functionObjectLibs ("libfieldFunctionObjects.so");
-      outputControl timeStep; //outputTime;
-      fields (U);
+      type          fieldMinMax;
+      libs          ("libfieldFunctionObjects.so");
+      writeControl  timeStep; //writeTime;
+      fields        (U);
     }
 }
 
+
 // ************************************************************************* //
diff --git a/tutorials/multiphase/interDyMFoam/ras/motorBike/system/minMax b/tutorials/multiphase/interDyMFoam/ras/motorBike/system/minMax
index 90222dc91c18c73b9fc2a3d29c362630611ad415..f2fda2469f1aefc4a6c3348ced2cb0f893f2fd60 100644
--- a/tutorials/multiphase/interDyMFoam/ras/motorBike/system/minMax
+++ b/tutorials/multiphase/interDyMFoam/ras/motorBike/system/minMax
@@ -21,7 +21,7 @@ minMax
     type            fieldMinMax;
 
     // Where to load it from (if not already in solver)
-    functionObjectLibs ("libfieldFunctionObjects.so");
+    libs               ("libfieldFunctionObjects.so");
 
     // Log to output (default: false)
     log             true;