Update iterator realisation

Add const_iterator and iterator typedefs