Version 1.0-0

* Added the CITATION file provided by the Journal of Statistical
  Software.

* Added reference to the Turner, Banerjee and Shahlori paper in
  the help files.

Version 0.1-4

* Fixed errors in the documentation of plot.AssetPricing.
  (07/03/2014)

Version 0.1-3

* Submitted to CRAN 05/March/2014.

* Fixed some glitches with respect to the assignment of
  "gpr" (group size probabilities) in the environments of scrF(),
  scrG() and cev().
  (28/02/2014)

* Added the capacity to produce "progress reports" to
  reassure the user that "something is happening".  These are invoked
  by means of a new "verbInt" argument to xsolve() and vsolve().
  If verbInt > 0 a progress report (rough percentage of [0,tmax]
  left to cover; estimate of total elapsed time) is printed out
  every verbInt seconds (approximately).

  The progress reports are produced by a new function progRep().
  (27/02/2014)

Version 0.1-2

* Submitted to CRAN 28/January/2014

* Tweaked the DESCRIPTION file to *import* polynom and
  deSolve rather than *depend* on them; tweaked the
  NAMESPACE file to import these packages

Version 0.1-1

* Submitted to CRAN 27/January/2014.
  (Package was never installed on CRAN due to a problem in
  respect of importing from the polynom and deSolve packages.)

* Tidied up RCS and made sure everything is up to data with
  respect to version of the functions. (27/January/2014)

* Changed the procedure for smoothing --- minimizing the
  size and frequency of the jumps in --- the price function in
  the discrete pricing and piecewise linear price sensitivity
  function settings.  This involves a new argument "epsilon"
  which replaces the old argument "maxFac". (27/January/2014)

* Changed the procedure for determining candidate prices in the
  case of piecewise linear price sensitivity functions, so that it
  can handle the "dip" (doubly indexed price)
  scenario. (27/January/2014)

* Revised vsolve() slightly so that if the specified value
  of "x" (prices) has a comment, then the default comment,
  i.e. "Prices not necessarily optimal." is catenated to that
  comment, rather than overwriting it as was previously the
  case. (26/August/2013).

Version 0.1-0

* Submitted to CRAN 13/August/2013.

* Changed the function turnPts to use deriv(ply) rather than
  deriv(as.polylist(ply))[[1]].  God knows why I originally
  put in this shaganappi ring-around-the-rosy.  I recollect
  that I couldn't get deriv() to work on an object of class
  "polynomial" but I could get it to work on an object of
  class "polylist".  Clearly it ***does*** work on objects
  of class "polynomial" so it is mysterious WTF was going on.
  (6 June 2013).

* Made adaptations to make use of the package deSolve to effect
  the solution of the differential equations. (Started 21 July 2013.)

  The transition went surprisingly smoothly. One slight worry arose
  in respect of the solution with piecewise linear price sensitivity
  functions.  When choosing the optimal price it is possible for there
  to be multiple maxima.  The maximum should be chosen to be as close
  as possible to the previous value so as to avoid jump discontinuities
  in the price function.  This requires knowing what the previous value
  was.  When using my roll-your-own Runge-Kutta procedure I was able to
  save the value of "x" as "xback" in the environment of "scrF" at each
  Runge-Kutta step.  Now that I am using deSolve I can't get at such
  a value of "x".  I have resorted to the expedient of saving the value
  of "xopt" obtained at the end of scrF() as the value of "xback".
  However this would be roughly equivalent to saving the value of "x"
  at each of the 4 component steps of a Runge-Kutta steps, and this
  doesn't seem quite right to me.  However it would appear to be the
  best that I can do.

* Made a (substantial?) change in the plotting regimen.  Rather than
  calling plot.flap() on object$x, object$v, or object$vdot respectively.
  I have now structured things so that the object returned by xsolve()
  (or vsolve) has class AssetPricing.  I have written a plot method
  plot.Assetpricing() with an argument "witch" to indicate which of
  three components of the object should be plotted.  This method then
  calls plot.flap() on the chosen component to do the real work.

* A few other minor corrections and adjustments were made.

Version 0.0-11

* Submitted to CRAN 02/11/13

* Removed a directory "man.save" from the top level of the package.
  This directory was an unnecessary remnant of the development
  process.

Version 0.0-10

* Submitted to CRAN 01/01/13.

* Changed call to .onLoad() to be a call to .onAttach() in
  the First.R file.

* Added a file declareGlobals.R which contains a call to
  globalVariables() which keeps R CMD check from issuing
  notes to the effect of "no visible binding for ...".

Version 0.0-9

* Submitted to CRAN 30/12/12.  Got complaint from the CRAN
  maintainers with respect to a couple of issues (see above)
  whence version 0.0-9 was never installed on CRAN.

* Reorganized the argument structure of plot.flap(); removed
  the "aao" argument --- its use is obviated by the newer
  "groups" argument.

* Made the default behaviour of plot.flap() be such that a
  *single* group of traces is produced.  This behaviour pertains
  when "groups" is unspecified or if the "group" column of "groups"
  is unspecified.  This behaviour is consistent with the former
  behaviour which arose when "aao" was set equal to TRUE.

* Did some corresponding (and other) revision of the help for
  plot.flap().

* Cosmetic change to code of turnPts() --- to make the code
  consistent with the (more perspicuous) notation in the paper
  about to be submitted.

* Re-ordered the entries of this file under "Version 0.0-7" so
  that the most recent change is listed first. (9 November 2012)

* Changed buildS() to assign the parent environment of S
  as globalenv() rather than new.env().  This keeps R from
  popping up a message "AssetPricing 0.0-9" when a workspace,
  in which a function returned by buildS() has been saved,
  is loaded. (9 November 2012).

* Corrected a bunch of spelling errors in the help files.
  (8 November 2012).

Version 0.0-8

* Changed the examples for xsolve() and vsolve() to make
  them run more quickly so as to reduce the time for package
  checking on CRAN.

Version 0.0-7 (Initial submission to CRAN, 7 November 2012).

* Adjusted vsolve() to throw an error if "jmax", as determined
  from "gprob" is greater than the "jmax" attribute of "x",
  and double indexing is in effect (i.e. "x" inherits from
  "di.flap").

* Adjusted buildS() so that "tmax" is an attribute of the
  returned value, rather than being assigned in the environment
  of the returned value.  Made the corresponding adjustment
  to the way that xsolve.pwl() accesses "tmax".

* Adjusted xsolve() and vsolve() to allow lambda to be a scalar
  constant as well as a function.

* Re-wrote the comments in scrF.

* Changed cev() to make use of "maxFac" and "xback" when
  doing discrete maximization over price.

* Added argument "maxFac" to xsolve; used by xsolve.disc()
  and xsolve.pwl() in choosing a maximum out of a finite
  discrete set (when there is some ambiguity about which
  maximum to use).  This gets rid of some anomalous looking
  discontinuities in the optimal price functions.
  Also added an object "xback" (the value of "x" at the
  previous Runge-Kutta time step) to be assigned in the
  environment of cev() by xsolve.pwl()) for use in selecting
  the appropriate "maximum" in a way which enhances continuity.

* Added new argument "main.panel" and changed the handling
  of "main".

* Adjusted putAway() in respect of the way the "jmax" attribute
  is handled.

* Changed the way "gloss" and "glind" are handled.

* Replaced the argument "index" by groups to provide for
  plotting of *groups* of traces (when "aao" is FALSE).

* Re-wrote plot.flap() to handling "doubly indexed" price
  arrays properly.

* Renamed the class "funlist" to "flap" (Function List
  for Asset Pricing).

* Created a new function findSolType() to determine the
  solution type --- cont, disc, or pwl.

* Re-wrote many comments in the code.

* Changed the name of an attribute of "funlist" objects
  from "xlim" to "tlim" (since the relevant variable is
  always referred to as "t").

* Made argument "type" default to "sip".

* Made argument "alpha" default to 1 when jmax=1 (so that it
  needn't be specified when jmax=1).

* Made argument tmax of vsolve() default to the upper limit
  of the "t"-axis associated with the argument "x".

* Re-ordered the arguments of vsolve(), xsolve(), xsolve.cont(),
  xsolve.disc() and xsolve.pwl().

* Made vsolve() able to cope with discrete prices (and with
  pwl price sensitivity functions.)

* Changed the name "parlist" to "parvec" to avoid confusion
  (since this object is a *vector* and NOT a list).

Version 0.0-6

* Added an argument "extend" to plot.funlist() --- controls
  how much the x-axis is extended to the right to accommodate
  the marginal gloss.  (It used to be fixed at 0.3, which is
  now the default value.)

* Corrected the references in the plot.funlist() help file;
  ``to appear'' is no longer applicable.

* Fixed a glitch in the examples for plot.funlist().

* Installed 2012-02-18

Version 0.0-5

* major debugging; corrected some very silly structure
  in xsolve.pwl(). Fixed a few other minor bugs in some
  other functions.

* changed the value out of range criterion in buildS.R
  to use eps = sqrt(.Machine$double.eps)

* changed vsolve() and xsolve.disc() to use "tvec" r.t.
  incrementing tt by delta on each step.

* changed vsolve() to make use of putAway()

* changed putAway() to accommodate input from vsolve()
  (whereby "x" is already an object of class "funlist"
   which gets passed through as is).

* Installed 2012-02-01

Version 0.0-4

* added xsolve.pwl()

* added utility functions getPossPrices() and turnPts()
  upon which xsolve.pwl() ultimately depends.

* amended scrF() to call upon getPossPrices() appropriately.

* amended the way things are assigned into the environment
  of scrF() to accommodate the piecewise linear computations
  in a convenient manner.

* Installed 2012-01-25

Version 0.0-3

* Added xsolve.disc()
  Still need to add xsolve.pwl().

* Installed 2012-01-23

Version 0.0-2

* Added xsolve() to call upon xsolve.cont(), xsolve.disc(),
  or xsolve.pwl() as appropriate.  (The latter two functions
  are not yet written.)

* Changed over the documentation for xsolve.cont() to be
  documentation for xsolve (and made xsolve.cont() "internal").

* Added buildS and documentation for it.

* Installed 11 January 2012.

Version 0.0-1

* Adaptation of previously written "Apma", made to be better
  structured.

* Installed 20 November 2011.
