Add multiple-path bi-directional BFS algorithm

The bf-paths generic algorithm returns all shortest paths from start to
finish.
Merge pull request #15 from jgdavey/bidirectional-bfs-mulitple

Add multiple-path bi-directional BFS algorithm