Add PaymentRecipient model with Unit Test

The Unit Test checks relevant database relationships, uniqueness
of the payment recipient scoped to the user as well as processing
the payment recipients in such a way to prevent duplicates for the user.
Update relationships in the Transaction model and unit test
Add PurchaseCategory model and unit test
Add Comment model and Unit Test
Move User factory from factories.rb to a scoped file

Move from spec/factories.rb to spec/factories/users.rb
Move Transaction Factory into factories folder and refactor

Instead of having one factories.rb file in the spec folder, move
the transactions factory into its own file in the factories folder.

Also refactor the transaction factory to not hardcode the ids for
various components of the transaction.