[WIP] Bug delete user #398

**Please do not merge just yet, found a cleaner solution and will add some specs.**

Bounty: [BUG: After deleting a user/protip Coderwall will generate a 404 on the logged in home](https://assembly.com/coderwall/bounties/398)

Simple fix, but took ages to figure out.

For some reason (please somebody tell me why) `has_many :protips, dependent: delete_all` deletes all protips associated with a user, but does not trigger `after_destroy` or any other callbacks of `Protip`. 
(hence does not update the ES index, deleted Protip's ids get returned in search results....eventually that causes `ActiveRecord::NoRecordFound` and 404)

I have tried `dependent: :destroy, destroy_all` - no effect, so just added a `before_destroy` callback for the User model.
From my experience it can lead to a hard debuggable issues.