Add ScriptPromise::reject

Add ScriptPromise::reject function in preparation for 
http://crbug.com/359386 and other refactorings.

This CL also adds ScriptPromise::cast(ScriptState*, 
v8::Handle<V8::Value>) and simplifies the existing cast 
implementation.

BUG=359386
R=haraken

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

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