Trunk-4444 Validate order overlap with scheduled date

Comments:
In Order.java:
          - getCalculatedStartDate and getCalculatedEndDate are kept public for future use.
          - Can rename getCalculatedEndDate and getCalculatedStartDate with better names (if any).
I have checked the cases and should statements manually.
Also made the same date tests separate.