Fixes: Safari's 'double finally on error bug'

Bug Demo: http://jsbin.com/usoquy/1/edit
known to be an issue in:
* Safari 6.0.2
* iOS 6 mobile safari
* maybe others

Turns out certain versions of safari 6.0.2 and
potentially other webkits, will execute finally twice,
if an error in finally is thrown. Interestingly the
error will only be thrown once. But the code up until
the error is thrown, will be executed twice.

Although strange, it is rare during normal ideal execution
that this causes real issues, but when it does, it
is quite frustrating to debug.

Two new utility methods provide the 'safe' workaround:

Ember.tryFinally(tryable, finalizer);
Ember.tryCatchFinally(tryable, catchable, finalizer);

These helpers try to abide by the languages try/catch/finally
semantics.