improved test, now has proper activate and render method

Hi Roman,
This update added a test and made a proper render and activate method for the widget. Also I fixed the spacing issue finally.

I do have one question. I'm having trouble understanding the difference between 
var pubsub =  "beehive.Services.get('PubSub')" 
(only called by the widget itself, right, from the beehive passed in from the activate method?)
and
var pubsub = new PubSub()
(called only by the query mediator?)

For instance, in the search bar widget, there is a function that had some confusing behavior:

submitNewQuery: function(query) {
      //this works
      this.pubsub.publish(this.key, 'query-changed', query)

      //this doesnt
      this.pubsub.publish(this.key, this.pubsub.NEW_QUERY, query)
    }

So I guess my question is, how does the widget get access to pubsub.EVENT-NAMES?

Thanks,
Alex