small improvments
Abstract model; clear up errors on set;