Give the user the ability to determine when focusd comes in to action

Currently, the `focusd` class is added to elements on when elements lose focus.

However, I think users should have the flexibility to choose when the `focusd` class is added to an element. (In the future, `focusd` should also be able to give the user the flexibility to remove the class `focusd`...but that's for later).

So here, the user can specify two settings: `onRecieveFocus` and `onLoseFocus`. The default of these are set so that the original default behavior is maintained i.e. the `focusd` class is added when an element loses focus.

However, for instance, the user can specify

```
onReceiveFocus: true,
onLoseFocus: false
```

This would mean that `focusd` is added only when an element receives focus.

If this pull request is accepted, the samples would need to be modified, the minified JS would have to be updated and `readme.md` should also get an updated description.