Fixed ConcreteFilesysElement to be abstract

This was an ABC with a concrete initializer, but it didn't have any abstract
properites and was therefore instantiable. In order to fix this, changes were
made to the abstract and concrete FS element types. The type-agnostic
"create()" method was added, which is not strictly necessary, but acts as a
good placeholder for the need for there to be *some* abstract property.
Add constructor option to Concrete FS lookups

If a Concrete FS lookup does not find an element, it is authorized to fail over
to creation of a new, matching one if and only if the constructor is passed to
lookup. Otherwise, the type of constructor desired is unknown, and None must be
returned. This also adds tests for the new functionality.