moving extensions into core_ext