Add license
narrow scope of dependencies
added iterator functionality
added iterator functionality