1) It means any address the router has, assigned to any interface.
3) Yes for connections from inside. But then you would need either another rule for connections from outside, or you'd need address list with both LAN and WAN, which for typical setup would be all interfaces, so it would be kind of pointless.
5) Main NAT rule is usually simple /ip firewall nat add chain=srcnat out-interface=WAN action=masquerade. That takes care of outgoing connections to internet.
And it's all actually simple (as possible).
Ideally you'd use dst-address=<public address on WAN> for dstnat rule, because it's exactly what you need. But since many setups use dynamic address on WAN, you can't really do that, because you don't know the address (= it can change at any time) and there's no dst-address=the-address-currently-on-WAN shortcut. Using dst-address-type=local is a compromise. It matches even those addresses you don't need, but it's usually not a problem. And if you really need some to not match (typically router's LAN address), you can exclude it.
And changing addresses is simple too. First the packet goes to public address and dstnat changes it to internal address of server. And then there's srcnat (hairpin) rule that changes source to router's LAN address (when using masquerade). It's nicely described on hairpin NAT page in wiki.
If you would ask why it has to be router's LAN address, the answer is that it doesn't. In fact, it can be any address that's not in LAN subnet. For example, hairpin NAT rule on my home router (which has static public address) is:
/ip firewall nat
add action=src-nat chain=srcnat dst-address=192.168.80.0/24 src-address=192.168.80.0/24 to-addresses=<public address on WAN>
And when I connect to webserver (with ports forwarded from public IP to internal machine), the connection looks like it's coming from my public address (I like it more than router's LAN address). And you don't have to stop there. You can use any random addres (preferably some that's not used anywhere else). Or you can map requests from LAN client to some other virtual subnet and be able to tell them from each other.
Final point, no, traffic does not go back to ISP, connections from inside don't touch WAN interface at all.