lots of ruby related changes