passes tests on ID creation for object, avoiding some recursive errors with negative numbers and a broad range of IDs. I hope.