Many udates to core classes