modified operators and added private members
added implementation for date class