Refactor moves for multiple origins

Adds ability to have multiple origins for moves. Add class_name: parameter to all associations because models are namespaced
This seems like it is doing a few different things; dice rolls, checking winner, destroying units. Could this follow SOLID more?