cleaned up const to inout, added traits, added more key/value options