Add `Algorithm.names_of_all_algorithms`

This also necessitated the addition of `Algorithm.name`, which is mostly
used on classes inheriting from Algorithm (`Algorithm.save` returns an
empty string, so not very useful).