Move Set::isDirected() helper to new Algorithm\Directed

* [x] Move Set::isDirected() helper to new Algorithm\Directed
* [x] 100% code coverage
* [x] Documentation / changelog

While currently having a separate class for just one helper method is a bit awkward, it should provide the base for adding new methods to the same class (such as `isMixed()` and `hasDirected()` vs `isDirected()`

Refs #27.