From what I've read about "block chains", how about changing the Bitcoin protocol to the following:
1. Placing maybe every 10,000 to 20,000 miners into individual groups (each group acts like a bank) with their own address so that groups could communicate with each other (similar to two banks transferring money between each other).
2. A limited number of wallets say 10 million customers are assigned to each group, each time all groups are full of customers then a new group is created (with a new address).
3. Each group has their own block chain different from another group's block chain (yet still secure because say 20,000 miners all have the same block chain) so that when a transfer occurs either within the same group or between only two groups then each block chain would only need to retain the wallets (and transfers) of its own customers.
Say there are 10,000 groups and only 1 (1 block chain) to 2 groups ( and 2 block chains) are used per transaction then this would free the other groups and therefore provide the faster transfer time and smaller transfer fees that everyone is looking for.
The downside would be that a wallet is stored in a block chain of each group which is say 20,000 miners but this would be sufficiently secure same as storing your money in one bank instead of all the banks in the world?