Separate viewFromXML to createViewFromXML

viewFromXML was confusing, it was doing "caching of" and "creating" views.
The method is now split in two. Derived classes should simply overwrite
createViewFromXML()
Merge branch 'add-ctklayoutviewfactory' into atlas-viewer-slicer-4.3

* add-ctklayoutviewfactory:
  Separate viewFromXML to createViewFromXML
  Add ctkLayoutFactory and ctkLayoutViewFactory