Prefer using a C++ deque type here over list

List does an allocation / free on each add and remove on the list which
adds up quickly if the structure is used a lot.

Improves for example BigDecimal performance that ends up using
finalizers because it Data_Wrap_Struct which ends up using finalizers.

See the benchmark script here:
https://github.com/rubinius/rubinius/issues/2746

Runtime on the BigDecimal part of the benchmark went from 25 to 21
seconds on my machine here.