Refactor lib

* Add `Queue` and `Mail` structs
* Set up a `config` struct for setting `DomainKey` and `DeliveryHost`
* Add better errors
* Packaged into `/apostle` folder so we can rename repo to `apostle.go`, and libraries can import as `apostle` without having to rename.*

Any thoughts @joho ?


* Means a long import string though with lots of apostle's