Latest and greatest

Many changes