Remove dependencies on Collab's core.collabuser and core.taggit

Notable changes:

1) Remove dependency on Collab's core.CollabUser as the custom user model.  The only reason this was included in the past was because the class is hard coded in South's migration files.
 - Reworked the migration files to utilize a method detailed [here](http://kevindias.com/writing/django-custom-user-models-south-and-reusable-apps/) and is also used in django-reversion, effectively decoupling the specific User model from the migration files.
 - Updated tests to work with any User model, rather than expecting CollabUser via the `core-test-fixtures` fixture.

2) Remove dependency on Collab's core.taggit, as this caused issues when running without CollabUser
 - Replace with django-taggit, but keep functionality to enable core.taggit to be used if present
 - core.taggit allows for tags to be removed by the person that created them

3) *Include* dependency on Collab's core.custom_comments class, as this is required to make nested comments work.