Returns the adapter to List interface for use with 3rd party code or standard Java libraries.
Unlike the IterableWithSize.toArrayList() which returns new list containing the same elements, this method returns live "view"
of this list instance meaning that changes done to the returned instance are reflected also in the original list.
Unless the original list is immutable, in which case all methods modifying the content throw UnsupportedOperationException
The returned list is Serializable