added constexpr + private
added exact_regex_filter for complete regex matches
changed join to use std::accumulate
simplified spells::find
added option to save and load list of known spells
removed polymorphism in filter (replaced w/ function)
generalized function map in interactive
constified print spell + removed explicit map type
replaced explicit map types with typedefs
extended csv to get container type per template
removed inheritence in spell_type

Previously spell_type inherited the container it was build on.
Now spell_type holds the container as a member and provides
access functions to that container.