Move S3 bucket operations to s3bucket.s

Now s3_list_bucket will return a `struct s3_bucket_entry_head` pointer
which you can iterate over with `TAILQ_FOREACH(e, entries, list)`
retrieving a `struct s3_bucket_entry` pointer.

Freeing this the responsibility of `s3_bucket_entries_free`

Also, add licensing to files, crank licensing year in others.
Rename some stuff in s3test.c