Changed Reader to an interface to allow different kinds of Reader (Memory based and database).
Improved contactmanagerimpl