Fixed a bug on Safari, where clicking on tabs did not work.

Safari fires an onpopstate event when the page loads, with a null state.
We were receiving this event, and updating the ViewStore state with it.
This caused an error to be thrown whenever we would subsequently try to
access a property of the state.
Merge pull request #16 from derikson/topic/history

Fixed a bug on Safari, where clicking on tabs did not work.
Added a package.json for npm, with bower as a dependency.
Use Bower for maintaining javascript libraries.