As for your "Redstone doesn't work when far away problem", this also applies to command blocks. What you want to do is put all of your contraption in the spawn chunks or move the spawn chunks to your contraption with this command:
/setworldspawn x y z
This is because Spawn chunks are always loaded and the setworldspawn command can move worldspawn and thus also spawnchunks
Now with your problem with the fireballs behaving weird around other players in multiplayer. Maybe try giving fireballs their own score or tag which you can then test for and then make it so that only fireballs which haven't been shot yet reset the score. This is what I kinda have in mind:
/execute @a[score_Fireball_min=20] ~ ~ ~ /testfor @e[type=Fireball,r=3,tag=!notStationary]
/execute @a[score_Fireball_min=20] ~ ~ ~ /entitydata @e[type=Fireball,r=3] {tag:notStationary}
/scoreboard players set @p Fireball 0
Hopefully this explains my thoughts somewhat good as I'm not really that great with testfor and execute, feel free to call me out if what I am saying is bs tho as I am currently unable to test this as I'm not able run mc atm.
First, type in chat:
/scoreboard objectives add deaths deathCount
Then, set two command blocks, one set to 'repeat' and 'Always active' and another linked to the first set to 'chain', 'Always active' and 'Condicional' as in this image.
Then, you add the following commands respectively:
/execute as @a[scores={deaths=1..}] at @s run scoreboard players set @a deaths 0
/kill @a
The way it works is simple: If a players die, the scoreboard will register and add a point to whoever died. After that, the command block will execute as the player (note that the command could go 'execute if @a[scores={deaths=1..}]') and clear everyone (including his) score. The second command will only activate if the first one was sucessful and if it happends, the command will kill every player in the server.
To avoid such, you can do:
/tag [PlayerName] add LifeLink
And modify the first two commands as well as adding another one set to 'repeat' and 'Always active':
/execute as @a[scores={deaths=1..},tag=Lifelink] at @s run scoreboard players set @a deaths 0
/kill @a[tag=LifeLink]
/scoreboard players set @a[tag=!LifeLink] deaths 0
It will only kill and activate the commands if such player is set with the LifeLink tag.
Here are some Images to help build it.
Place the first block down:
Shift and then right click to place the second one. Make sure they are pointing in one direction (http://prntscr.com/p9kwvb).
Open the first command block. Paste the command bellow and set as 'Repeat' and 'Always Active':
/execute as @a[scores={deaths=1..}] at @s run scoreboard players set @a deaths 0
Open the second command block. Paste the command bellow and set it to 'Chain', 'Conditional' (Super important, don't miss it) and 'Always Active'.
/kill @a
The final product.
Best Answer
There is no such tag. Your best option is to put an invisible horse there and teleport the visible mob to the horse, but even that only works if you can actually click it, which might not work with a ravager, because it's so big.