Extracts computed property set into a separate function

This is done to work around V8 (it cannot optimize functions with `try` blocks).

Comparison from a real app:

`defineProperty`

Before:
![defineproperty
deopt](https://cloud.githubusercontent.com/assets/1131196/4164553/ad42a504-34f6-11e4-92cc-fdf17e88cc22.png)

After:
![defineproperty
cp-set](https://cloud.githubusercontent.com/assets/1131196/4164559/bf012a86-34f6-11e4-9bba-e5b2dc378946.png)
`Function.apply` is special and it's ok to use it. It doesn't get deoptimized.