Revamp Array

Main additions:
RemoveAt, InsertAt - Private API.
InsertFront - Public API.
Capacity - It can now shrink and enlarge.

Most internals reworked to use RemoveAt, InsertAt - avoids a lot
of duplication and ensures proper clean-up when objects were being removed.
Hum... `O(log(n))` is better than `O(n)`, so what's wrong? Besides, it's actually a copy paste typo. The complexity is `$(BIGOH n + m)`