code: public static <T> List<T> reverse(List<T> self) {
          return reverse(self, false);
      }
docs: Creates a new List with the identical contents to this list
  but in reverse order.
  <pre class="groovyTestCase">
  def list = ["a", 4, false]
  assert list.reverse() == [false, 4, "a"]
  assert list == ["a", 4, false]
  </pre>
  
  @param self a List
  @return a reversed List
  @see #reverse(List, boolean)
  @since 1.0