Add Stack and Queue data structure

* Rename package to support more data structures
Split Dijkstra and A* functions

* Rename package to make it more generic