title: Reordering a list of positional items
body: <p>I have a Request object which contains a list of Approvers. An approver has a name and an approval position.</p>
  
  <ol>
  <li>Mathew </li>
  <li>Mark </li>
  <li>Luke </li>
  <li>John</li>
  </ol>
  
  <p>Ultimately, a request will move through this chain, starting at Mathew and ended at John.</p>
  
  <p>I need to be able to re-order these allowing adds and deletes as outlined below.</p>
  
  <p>An approver can be -</p>
  
  <p>Added at a certain position - ie. Add Peter at position 3 in which case the new order would be</p>
  
  <ol>
  <li>Mathew </li>
  <li>Mark </li>
  <li>Peter</li>
  <li>Luke </li>
  <li>John</li>
  </ol>
  
  <p>Delete - ie. Delete Mark in which case the new order is</p>
  
  <ol>
  <li>Mathew </li>
  <li>Luke </li>
  <li>John</li>
  </ol>
  
  <p>Edited - ie you can change John's position to 1 in which case the new order is</p>
  
  <ol>
  <li>John</li>
  <li>Mathew </li>
  <li>Mark </li>
  <li>Luke </li>
  </ol>
  
  <p>I have come up with a number of solutions, however none of them is particular elegant.</p>
  
  <p>Any help would be much appreciated</p>