Made things a bit more object oriented; Added templating and send/make methods