Started PokeLib integration for trainer_gen4impl, currently segfaults when grabbing specific team members
trainer_gen4impl: removed internal.hpp reference, replaced with database/queries.hpp
trainer_gen4impl: no segfaults when converting PokeLib::Pokemon to pkmnsim::spec_pkmn
Updated PokeLib to latest commit
trainer_gen4impl: same functionality as trainer_gen3impl
Moved trainer_gen3impl::export_to_file to trainer to be default
Merge branch 'pokelib_impl'

Conflicts:
	lib/trainer_gen3impl.hpp
trainer_gen4impl uses trainer's export_to_file to remove duplicate code
Added check for Git submodules in initial CMake run
Increased spec_pkmn's interaction with base_pkmn

* Added functions to spec_pkmn to call base_pkmn's equivalents
* ex. spec_pkmn::get_icon_path() calls base->get_icon_path()
* spec_pkmn::set_form changes stats and sprite based on form change
swig: ignore spec_pkmn::set_form(std::string) to remove ambiguity
Continuing to make spec_pkmn usage more convenient

* Changed base_pkmn::get_display_name() to base_pkmn::get_species_name()
* Added spec_pkmn::get_species_name() to call base_pkmn::get_species_name()
* Propogated changes through library and apps
Added dict<string, string> attributes to spec_pkmn

* Some unique information simply can't be stored in the supplied variables
* This will be used to prevent loss of certain information in Pokemon from saves
trainer_gen4impl: grab held item from game save
spec_pkmn: added get_attributes() and has_attribute()
Removed vla::get() segfault
Implemented Pokemon gender in both trainer impls, implemented Pokemon shininess in trainer_gen4impl