Allow freeze_time to take date and datetime objects

Also raise an exception with a helpful error message if an invalid type is provided.