GEOMESA-88 - Authorizations SPI

Set visibilities on written data, apply authorizations to queries, allow for 3rd party service providers for authorizations
I refactored the filtering to be contained in the authorizations provider (which makes more sense, logically), so the auths param is no longer needed and I removed it. I renamed the 'visibility' param to 'writeVisibilities' and added scaladoc for it. The visibility part is likely to change again with the ticket I'm working now (67), so I'll try to make it clearer there.