Update user_model for compatibility with MY_Model changes in e77ea0aa9be4f48cf38cd2c5f5d81e52b15429a1

Additionally:
- cleaned up PHPDoc comments in MY_Model.php
- removed unused $return_type argument from BF_Model::find() method
- refactored BF_Model::delete() and BF_Model::delete_where() to show the
similarity in their logic (should probably make one a wrapper of the
other)
- added @internal note to BF_Model::count_all() regarding potential
confusion with $this->db->count_all()
Fix #812 (take 2) Run list_fields() on the query

Running $this->db->list_fields($this->table) resulted in an older field
list being returned from somewhere in CodeIgniter/PHP/MySQL's depths.

Running list_fields() directly on a short query against the table
results in the correct field list.
Fix some permissions created by migration

Bonfire.Emailer.View, and possibly some other permissions, would
sometimes not install properly when the permission system was upgraded
in the migrations.
Changed require to require_once to fix issue 814
Merge pull request #815 from SethArchambault/develop

Changed require to require_once to fix issue 814