Updated poster to use CSS styles to hide instead of show/hide methods. fixes #1567

- Poster will now reshow itself when a poster source is set after a non-source
- Relying on CSS instead of show/hide methods now
- Made it so empty strings would hide the poster image element
- Updated a few component methods that made it annoying to create a mock player (@dmlap)
- Refactored poster image tests
Yeah, that was the right way to go. I went down a rabbit hole until I realized the stylesheets had to be added to karma. :-P But I think we now have a good example of testing css states of components in different player css states. 

I really can't believe this works. Changing the classname and synchronously testing computed styles, in IE8 and PhantomJS. Nothing in my soul believes this should work so easily (:punch::christmas_tree:).