Fix new enum scoping rules

Also, from_str was moved into std::str