Join team error #391

[Fix for Error when attempting to join a team instead of create a team #391] (https://assembly.com/coderwall/bounties/391)

The fix was a one liner - incorrect format of params, which caused `params.permit` to raise a 400 error.

I covered the related logic with specs and also did a little refactoring to make it easier to test and to understand the logic.  I have also feature specs for this logic, but decided to make a separate PR, as it requires although minor, but some changes to the dev env.