Fix derpy metadata handling in ID lists

This fixes a bunch of derpy things in the ID lists, including the detectable IDs adding a new entry for the same block with different metadata, even though it maintains a list of metadatas in a single entry. This pull appends #877