Moved all library entry manipulation code scattered throughout EESchema into
the component library object itself. Adding, removing, and searching is now
handled by the library object. This is the precursor to replacing the current
priority queue code.
This is the first in a series of updates to the schematic library component
object code. The goal is to eliminate the external manipulation of these
objects and push this code back into the objects themselves. Also replace
the priority queue and internal linked list implementations with DLIST or
Boost pointer containers.