added a publish messages method

queuing a couple thousand messages was taking way too long, it's more
expensive than i thought to create a new connection for each message,
new method will queue them all up under the same connection