FLUID-5251: Changed the conditional expander to only evaluate the relevant block of transformations. This involved changing the contract of the multiple input transformers, passing them functions for inputs that on evaluation returns the result value (and has all the usual side-effects).

FLUID-5251: Changed condition transformer to a non-standard inputtransformer, only evaluting the relevant 'input' based on what the condition evaluates to

FLUID-5251: All tests passing again. New multiinput transform contract is now to expect functions as inputs, evaluating to whatever the model input is. All multi-input transforms updated accordingly

FLUID-5251: Fixed extremely minor spacing issue
FLUID-5251: linted files - fixed indentation and semi-colon
FLUID-5251: Addressed antranigs comments with function replacement and unecessary comments
FLUID-4686: The preferences framework only saves the modified preferences rather than all.
FLUID-5251: Updated code to base condition not only on strictly true/false boolean values, but also anything that javascript interpretes as boolean -eg. String evaluates to true, undefined evaluates to false, etc
Merge remote-tracking branch 'cindy/FLUID-4686'

* cindy/FLUID-4686:
  FLUID-4686: The preferences framework only saves the modified preferences rather than all.
FLUID-5251: Changed index of condition expander from git status to if/else shorthand format
Merge branch 'FLUID-5251'

* FLUID-5251:
  FLUID-5251: Changed index of condition expander from git status to if/else shorthand format
  FLUID-5251: Updated code to base condition not only on strictly true/false boolean values, but also anything that javascript interpretes as boolean -eg. String evaluates to true, undefined evaluates to false, etc
  FLUID-5251: Addressed antranigs comments with function replacement and unecessary comments
  FLUID-5251: linted files - fixed indentation and semi-colon
  FLUID-5251: Changed the conditional expander to only evaluate the relevant block of transformations. This involved changing the contract of the multiple input transformers, passing them functions for inputs that on evaluation returns the result value (and has all the usual side-effects).
Spelling correction in readme file
Merge remote-tracking branch 'karan/readme_update'

* karan/readme_update:
  Spelling correction in readme file
FLUID-5297: Apply "use strict" to Fluid.js and fix resulting test failure in DataBindingTest.js caused by failure to guard deltaMap update
Merge remote-tracking branch 'antranig/FLUID-5297'

* antranig/FLUID-5297:
  FLUID-5297: Apply "use strict" to Fluid.js and fix resulting test failure in DataBindingTest.js caused by failure to guard deltaMap update
Merge remote-tracking branch 'upstream/master' into FLUID-5276