add WrappedArrayList

wraps an array with a List implementation

change asLinkedList method in ArrayUtils to asDeque; return interface for Deque

update ArgumentParser for changes to ArrayUtils
add abstract collection wrappers

made some collections improvements