Rules with promises (Partial)
Merge with master

- Conflicts solved
Changes in directive SPForm

- Arguments in functions "onPreSave", "onPostSave" and "onCancel" are
now passed correctly.
The arguments passed are "item" and "originalItem".
- Bug fix when functions onPreSave, onPostSave and onCancel are not
defined.
Focusable form elements

- Implemented method 'setFieldFocus' in 'spform' controller.
- Implemented new directive 'spfieldFocusElement'.
- SPResolveExpression bug fixes.

Explanation:
'setFieldFocus' method is used automatically to set the focus to the
first invalid field when the form is validated.
The 'focusElements' array property in the 'spform' controller contains
all the focusable elements and are defined by the new directive
'spfieldFocusElement'. This attribute-type directive must be added to
the desired input form control, and capable to get the focus, in the
template of the 'spfield-xxx' directive in order we can give focus to a
field.
SPForm save options

- Implemented options argument in save method of SPForm controller.
- Bug fixes