Redundant BGP-Based Internet Access

How about the various design suggestions for using bgp in order to use multiple internet providers for a single site? or multiple sites?

How about routers receiving full routing tables from both ISP vs one router receiving a default route and the other one receiving a full routing table? Outbound traffic engineering strategies etc.