Customer returns

Introduces customer returns which represent getting merchandise back from the customer. The presence of a customer return (and it’s associated return items) indicate that a customer has returned something and the store has received it. A customer return also has an associated stock location which indicates where the customer has returned the merchandise.

Customer returns replace the “Receive” button behavior in return authorizations. Receiving an RMA would be achieved by creating a customer return and selecting all the items in an RMA. Given that a customer return is not tied to a particular RMA, it allows a store to accurately represent what is returned. The logic to whether each particular item should be accepted or rejected will be handled in a future PR.

Once the customer return is created, the admin can refund the customer for the customer return’s total amount similar to the refund button in RMA.
I'd like to see inline javascript moved into the asset pipeline structure. If you can't already scope this javascript to only execute on the appropriate controller/actions with a body class or something we should add them. A major refactoring of the backend is going to be taking place, and hopefully a ton of superfluous javascript will be thrown out. Let's get a nice structure figured out now with the Returns javascript that keeps script out of the views, and in an easy to find folder/file naming pattern.

I think this javascript should be in a "customer_returns" folder as form.js scoping the elements with something like $('.customer_returns_controller.edit_action, .customer_returns_controller.new_action') or similar.