Choice of MAC and handling it correctly
There are various factors that go into choosing a MAC algorithm, for example: Use cases for CMAC vs. HMAC? documents CMAC vs. HMAC; I think HMAC is a reasonable default choice though (supported by Colin Percival: http://www.daemonology.net/blog/2009-06-11-cryptographic-right-answers.html).
Yes, the MAC can be transmitted alongside the ciphertext, one thing to remember to do when verifying the MAC is to use a constant time comparison: http://codahale.com/a-lesson-in-timing-attacks/