adds unit tests react-component and react-directive

@davidchang this adds unit tests 
I believe so. Every time we render the React Component we do it in a $timeout, so whenever something changes in a test we need to `flush`. Besides `$timeout.flush` errors if there is nothing to flush (I found :-))