Fix Blink API usage errors in WebMIDI implementation

The first error is not properly invoking ActiveDOMObject::suspendIfNeeded()
in MIDIInput and MIDIOutput, which are ActiveDOMObjects by virtue of their
inheritance of the MIDIPort class. This fixes the crashes seen in the attached bug.

The second error is a memory leak. The existing MIDIAccessPromise code
called ".release().leakRef()" on the RefPtrs holding the objects to be passed
to the callbacks. This results in a memory leak. Instead, we now explicitly
clear the RefPtrs after calling the callback.

Also removed unused MIDIPort::create method (MIDIPort is an abstract class).

BUG=282079

Review URL: https://codereview.chromium.org/34453005

git-svn-id: svn://svn.chromium.org/blink/trunk@160393 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Web Animations CSS: Schedule a timer to wake DocumentTimeline if no short-term animation updates are required.

Currently, DocumentTimeline will repeatedly requestAnimationFrame() if future animations are pending, regardless of how long it is before those animations actually impact style.

This change ensures that if there are no immediate pending changes, a timer is set to wake DocumentTimeline before the appropriate frame instead.

BUG=258896

Review URL: https://codereview.chromium.org/34613007

git-svn-id: svn://svn.chromium.org/blink/trunk@160394 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Rename the temporary Platform::addTraceEventNew() to addTraceEvent()

BUG=trace-event:487

Review URL: https://codereview.chromium.org/30173002

git-svn-id: svn://svn.chromium.org/blink/trunk@160395 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Gardening: Flaky timeout of use-same-database-in-page-and-workers.html.

BUG=310866
TBR=jsbell@chromium.org

Review URL: https://codereview.chromium.org/37993003

git-svn-id: svn://svn.chromium.org/blink/trunk@160396 bbb929c8-8fbe-4397-9dbb-9b2b20218538