Lots of changes. release candidate