cleanup promise proxy

- utilize RSVP.rethrow + Promise.fail
- update isResolved -> isSettled, to comply with promise/a+ naming conventions
  (cc @domenic)