Add additional erlcloud_ddb_util methods

q_all does repeated queries to get all items.

get_all does parallel batch get item requests.

Also fixed record definitions to make it explicit that unprocessed_items/unprocessed_keys will never be undefined. This was always the case, so not a API breaking change, but I didn't realize it until I had used the batch methods more.

Normally I would use plists for the get_all parallelism, but thought it wasn't worth taking the dependency, so I just implemented a simple parallel map function.