Completed first pass at gem functionality.