Revert "Item interface should have been in DocIdPusher interface"

This reverts commit 76e83350afc3c0a902c60addfeb3502744d0e5a3.

Putting the Item interface inside of DocIdPusher interface
made it public. The Item interface is used inside the library
for dealing with records, acls and docids. However Item
should not be available to clients to create other Item types
which would result in possible runtime exceptions.

We are reverting the placement of Item from DocIdPusher to
DocIdSender.  DocIdSender is concrete and allow for hiding
of the Item interface.
12 files changed