Added templated code library.

The library contains templated code for Dijkstra and HeapMin implementation
Can then be further reused.