[RFC] Iterator concept for paginated collections

This is a proposal for modifying all the list methods to expose an iterator interface.

If you like the proposal I will make it more generic and finish the implementation:

* Move getCollectionIterator to BaseClient
* Use generics for Container and other typec
* etc.

Using it would look something like this:

```java
        Iterator<Service> iterator = client.getServicesClient().list(new PaginationOptions(10, null));
        Integer i = 0;

        while (iterator.hasNext()) {
           Service service = iterator.next();
           System.out.println("Service: " + i.toString());
           System.out.println(service.getId());

            i++;
        }
```