move reflection utils to core project