Weighted_LoadBalancing + AdvanceFailover_check_via_other_host Simple Way Possible?

Dear Mikrotik Pro Hi.
I read much about Load Balancing and Fail over in Mikrotik but unfortunately I think this is not as easy as i think.
How ever im looking for a best pratice for implementation 2 WAN Fail-over + Load-balancing but this is important that be efficient and effective.
I have some question. So glad to have your help and also your experience about analyze the possible ways as a geeks. But first of all let me I explain the heavy issue may be around it:

  1. We certainly know Check-Gateway for checking the fault WAN (for switching internet gateway) is more like as a fun. because all the time actually check gateway can be OK, however the connection was done. Like setting local ip for modem and mikrotik or using static ip in both faces.
    The solution that was mentioned in Mikrotik Wiki page is HERE (https://wiki.mikrotik.com/wiki/Advanced_Routing_Failover_without_Scripting) is good but there is two main problem:
  • first of all I didn’t understand many about what he done exatcly , and second it seems that it can be used just for two wan. so if there were more than two wan what we should do.
  1. I read an article that explain about Nth method for Load balancing, it is also good but marking as odd and even seems something like equal round robin. is there any way to set the connection weight in mikrotik? For example we have one 8 Mb ADSL Internet and one 2 Mb ADSL Line. We want to make the weight as 4 to 1 load sharing (4 packet from 8 Mb and 1 Packet from 2 Mb). How can we do this and does Nth is include of PCC type ?
  2. Of course in each place there are some system/server that should use one internet connection specially. Is there any possibility to have something like address list to route throgh one specific gateway and the next gateway be as failover in mikrotik for such systems (rather than other systems in the network that deployed by Load sharing traffic weight)?
  3. The special problem about policy routing is changing Public IP during NATTing the systems packet out from WAN ports of mikrotik i think. for example if we use policy routing to mark the Email Traffic (25,110, and etc) to route through WAN1 connection, maybe we can consider that two public IP are set for specific client by the time! because showip.net websiite show WAN2 IP address but actually there was some protocol (like email) that use WAN1 Public ip to transmit and receiving data. Is it true and if so how can we solve it in policy routing to have fix ip and doesn’t blocked by ISP and email Provider because of chaning or repetitive IP at the same time.
  4. Is there any easy way (like script or …) to do all for us in mikrotik and doest it actually reliable? (with considering A) some system that should use specific ISP for internet+Failover, B) Check Gateway with yahoo.com site rather than local ip of modem and C) Load Balancing + Failover the other systems weightily)
    Thanks very much.