Add an array-backed Queue and use it in Linker to restore Java5 compatibility.

Add an ArrayQueue (trimmed ArrayDeque from Android) and use it in Linker to restore Android API 8 (Java5) compatibility. Add animal-sniffer to ensure it.

Fixes square/dagger#387

Note: ArrayQueue is specifically a cut-and-pasted ArrayDeque from the Android sources (written by Josh Bloch and released to public-domain).  These have been trimmed to support only the Queue (and AbstractCollection) APIs, with several methods inlined to reduce the method count.  It could possibly be trimmed further but represents a valid Collection and Queue as-is.