Add preliminary test files for The-Liskov-Substitution-Principle.
Fulfill preliminary test for The-Liskov-Substitution-Principle app.
Update LSP tests to use the house code type.
Tweak App test to only run that code in #main that does not require direct user input.
Add preliminary tests for EnvSetupFilter.
Add example of Gherkin-based test method naming scheme in comments.
Refactor DynamicEnvironment away entirely. Replace it with EnvSetupFilter#mergeInSecurityConfigurations, which just creates a new Environment with truly merged configurations.
Remove unused Environment#getString and Environment#getAdminEmail methods.
Removed unused custom constructor for Environment and its extraneous private variable.
Made Environment a subclass of HashMap<String, String> instead of HashMap<Object, Object>, as it had expected to have and is only supplied Strings, preventing the storage of mismatched Objects.
Extract EnvSetupFilter#mergeInSecurityConfigurations from #getEnvironment.
Extract EnvSetupFilter#buildSecurityConfigurationKeyMap from #getEnvironment.
Rename EnvSetupFilter#getEnvironment to #buildEnvironment in order to better reflect its actual purpose.
Extract EnvSetupFilter#addHomeSiteURLs from SiteConfiguration, in anticipation of decoupling SiteConfiguration from Environment.
Remove extraneous SiteConfiguration#seedEnvironment.
Removed extraneous instance variable from EnvSetupFilter#addHomeSiteURLs, as its class is now nothing but static variables.
Remove comments documenting intent already expressed in the code itself.
Extract securePropMap instance variable of EnvSetupFilter into its own SecurePropMap class.
Extract insecurePropMap instance variable of EnvSetupFilter into its own insecurePropMap class.
Extract noSSLPropMap instance variable of EnvSetupFilter into its own NoSSLPropMap class.