core: Use longs to represent dates in QueryData

Use longs representing the amount of milliseconds since the epoch
instead of Data instances in order to prevent accidental change of
QueryData's internal members externally.

Besides being a good defensive practice, this patch solves the
EI_EXPOSE_REP and EI_EXPOSE_REP2 FindBugs warnings on this class.

Change-Id: I9eb83c123a4fd9a1b2abc3bdb74d91a1391245d2
Signed-off-by: Allon Mureinik <amureini@redhat.com>