I don't believe there is a way to make the new store permanent, I think at startup the $EntityStores is empty by design.
But you can add the relevant code to your .init file, where you can keep any code you want executed when the kernel starts.  I have tons of stuff in my init file, little helper functions I find to be useful.
To find the init file, run
SystemOpen@Echo @ FileNameJoin[{$UserBaseDirectory, "Kernel", "init.m"}]
add the lines
store = Get[ "~/Downloads/General-Topology-EntityStore.wl" ]; 
AppendTo[ $EntityStores , store]; 
And then when you restart your kernel you should be able to run 
EntityValue["GeneralTopologyTheorem", "Activate"] // Activate;
Entity["GeneralTopologyTheorem", "ClassicalAscolisTheorem"]["QualifyingObjects"]
and get the result.  There isn't a way to have the "Activate" code run beforehand, since the EntityValue framework is loaded after the init.m file is read.