Checkout Form Class Fix and Enhancement
Started using checkout form class functions in place of a couple of queries that were repeated in various places adounrd the code and noticed a couple of things.

* The data from the database that is stored in the class static can be retrieved with a parameter excluding heading fields but if a later call tries to retrive the values with heading fields the heading fields wouldn't get returned.  Changed the query to always retrieve the heading fields. Changed the retrival function to filter out heading fields if the caller asked for them to be filtered.

* Added a class function to return the count of fields

* Noticed that the version number was set to 3.9, since we are using the functions in 3.8.14 changed the version number in the header
Changed file back to upstream master to remove unneeded changes
The updates
Changed version number to 3.8.10
Added public to constructor
Merge pull request #990 from JeffPyeBrook/checkout-form-test-fixes

Checkout Form Class Fix and Enhancement