Refactor create_trust for readability

I refactored the create_trust function in the keystone.trust.controllers
module in order to make it more readable. In addition, the function will
now check for all the required attributes in the request and return an
appropriate error message if any of them is missing or is empty.

Change-Id: I6f988a34e17e821b4a8544bec516845665ba2674