Refactoring the plugin into a revealing module pattern

@Koded Have refactored to use a revealing module pattern so that we can expose a public method which is used to re-evaluate the current set of breakpoints.

I have also added a demo page, and fixed issue #8