Algorithm clonability should be explicitly set by Alg author
The clonability of an Algorithm is best decided by the Algorithm author, and should not be a Property of the Algorithm that can be changed at run time.
This MR removes the IsClonable Property of Algorithms, and changes
it into a protected bool that derived Algs can modify. We should consider
whether the default should be true or false. It is currently set to true
for the sake of convenience.
If an Alg is not clonable, then its cardinality is automatically set to 1 during sysInitialize.