Fix UserDetail association and use counter_cache

1. Let Rails handle counter_cache.
2. Use belongs_to instead of has_one through:

Before:

    > Thredded::Post.first.user_detail
    SELECT `thredded_user_details`.* FROM `thredded_user_details` INNER
    JOIN `accounts` ON `thredded_user_details`.`user_id` =
    `accounts`.`id` WHERE `accounts`.`id` = 127 LIMIT 1

After:

    > Thredded::Post.first.user_detail
    SELECT `thredded_user_details`.* FROM `thredded_user_details` WHERE
    `thredded_user_details`.`user_id` = 127 LIMIT 1
Merge pull request #42 from glebm/fix-user-detail-association

Fix UserDetail association and use counter_cache