[enhancement] added implementation of double ended queue. UT to come.
[enhancement] added some tests and fixed few missing cases
[enhancement] completed main method