Completed ruby modules simple in theory but can get a bit complicated.