FETools::get_fe_from_name() implemented for nonzero codimension

In addition to the new functionality, the internal structures mapping names to finite element factories have been improved, thus avoiding several specializations of functions.

This pull request fixes #86 (issue)
Since the tuple would be

```
std::tuple<map<string,FEFactoryBase<1,1>*>,
           map<string,FEFactoryBase<2,1>*>,
           map<string,FEFactoryBase<2,2>*>,
           map<string,FEFactoryBase<3,1>*>,
           map<string,FEFactoryBase<3,2>*>,
           map<string,FEFactoryBase<3,3>*> >
```

I think I rather leave it where it is. But I will keep that in mind.