updated, cleaned up id methods and functions