Got the basics down. Haven't thrown any exceptions yet.