fix(select): handle changes to the option items

If the option items change the `directive` should refresh the `selectpicker`. The behaviour is now
handled if the user sets the `bs-select` property to the options array (the one that is also set in the
`ng-options`).
The directive already used to do `scope.$eval(attrs.bsSelect)` but then did nothing with it.
A `refresh` local function has been added not to replicate the same code of testing new and old
values and then refreshing the `selectpicker`.
A proper test has been added, where an item is pushed into the options array, that same item is
then selected and tested against.
fix(timepickerSpec): fix testing error on different timezones/languages

When executing the `timepickerSpec` tests, a test failed while matching a RegEx saying:
`PhantomJS 1.9.2 (Windows 8) timepicker should correctly update both input value
and bound model for date type FAILED
        Expected Date(Tue Oct 01 2013 01:00:04 GMT+0200 (ora legale Europa occid
entale)) to match /(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Au
g|Sep|Oct|Nov|Dec) \d{1,2} \d{4} 01:00:\d{2} GMT[-+]\d{4} \([A-Z]{3,4}\)/.`
The latest part of the string ("ora legale Europa occidentale") didn't match the
"[A-Z]{3,4}" RegEx part, so it had to be changed for the tests to succeed.
Also, after calling `grunt test`, `grunt` complained about `source-map` missing,
so it was added to the `devDependencies`.
Merge branch 'fix/timepicker-spec' into develop