#675 remove legacy code. The generated esm schedules are stored inside instance plist, and the definition schedule is copied to experiment, not retained and then modified any more
#675 code refactoring, add some logs
#675 fix the bug that scheduling new notifications will clear fired but not time out notifications from the notification center