Allow props.style object to accept array as value

This allows components to set multiple values for a single css rule. The main use case is to set vendor prefix styles. Example:
```javascript
var style = {
  cursor: ['-webkit-grab', '-moz-grab', 'grab']
};

React.renderComponent(<div style={style}>Grabbable!</div>, mountNode);
```
When the component initially renders, all styles will be set as a markup string. When the component updates its style, the last valid style for the browser will be set. 
This change does not handle the edge case where you pass a singleton array of an empty string as the value for a style. I bet the css stuff could be refactored a little bit to make it clearer. Also, should react manage vendor prefixes automatically?

Other things I did:
* Added actual unit tests for `CSSPropertyOperations.setValueForStyles`
* Fix a bug where setting a style with a n empty string will initially set