Extract a layer potential source superclass.
This creates an abstract class LayerPotentialSourceBase with a few methods and properties and makes QBXLayerPotentialSource a subclass.
The end goal is to share code and functionality with a Nystrom layer potential source (#33 (closed)) which is not yet implemented.