First implementation of algorithm panel

First implementation of the algorithm search display gui. Also
refactored creators so they are interfaces not abstract classes