Merge branch '218-fileindex'

Closes #218

* 218-fileindex:
  Improve schema update documentation
  Update schema to include index on filenames
  Style: put schema version in implementation not header
Add a precache tags property

This is a hint to the database about what tags the application
is likely to request in the future so they can be cached.
Add customization of ctkCmdLineModuleXslTransform

It is now possible to change the class name of each widget
For more advanced customization, the xsl can be overloaded
using setXslExtraTransformation.
Added option to format xml output from xsl transformations.
Use pimpl idiom for public xml/xsl classes.
Use variable substitution syntax for unsupported widget types.
Differentiate missing keys and previously seen keys in dicom tag cache

This change allows the tag cache to record when keys have been
previously accessed but were either missing from the instance or
had empty string values.  In either case, they fileValue method
should return an empty string; with this change the file does not
get re-parsed when the missing/empty value is requested subsequently.
Add tests for tag cache and precaching in dicom database

Test to ensure that requested precache tags are included
in the tag cache during import operations and that correct values
are returned when asking for valid and invalid cache values.
Avoid assert on ill-formed group/element strings
Expose tags to precache in app widget for use with private database

Since applications cannot directly manipulate the database of the
app widget, we expose a property and delegate it to the
privare database.
Merge branch '216-cache-on-import'

Closes #216
* 216-cache-on-import:
  Expose tags to precache in app widget for use with private database
  Avoid assert on ill-formed group/element strings
  Add tests for tag cache and precaching in dicom database
  Differentiate missing keys and previously seen keys in dicom tag cache
  Add a precache tags property
Precache all tags with a single load of the dataset

This change avoids doing a new load of the dataset for each tag
in the precache list.
Add indices that will speed up common query scenarios

See issue #225
Update schema number to account for new indices
Make progress dialogs into member variables.

Closes #223
Merge branch '223-multiple-import-dialogs'

* 223-multiple-import-dialogs:
  Make progress dialogs into member variables.
Merge branch '225-new-db-index'

* 225-new-db-index:
  Update schema number to account for new indices
  Add indices that will speed up common query scenarios
Merge branch '224-optimize-tag-caching'

Closes #224

* 224-optimize-tag-caching:
  Precache all tags with a single load of the dataset
Merge branch 'master' of github.com:commontk/CTK
Fix schema number

Database code should always be in sync with the version
of the schema.  This is checked by ctkDICOMDatabaseTest3.

Closes #226