refactor code for implementing new template type
refactor code for implementing new template type

Ability to create instances from snapshot is needed, because now you can
only create snapshot, but can't create a new instance from it. This
paths does some preparation before implementing that functinality.

* Make PCSTemplate base class and add EzTemplate class.
* Move code for creating container to Template class
  (create_instance method) and add function get_template,
  which will select proper template class depending on
  image ref.

CloudServer/pcs-nova-driver,CloudServer/pcs-nova-driver