Multiple Shipping Addresses in MarketPress

I have MarketPress (full not lite) and am looking to modify the way the shipping addresses are used / stored.

At the moment there is only a single shipping address option, which the user can change at checkout.

What I'd like to do is:
1. Have the option of adding multiple shipping addresses to each profile. This can be limited to a set number if necessary.

2. Have the user select which address to use from a drop-down menu during checkout.

3. Prevent the user from changing the shipping address except through the user profile page (this is a business requirement.)

I've seen several post within the forum relating to the lack of shipping options in MarketPress, however I am hoping the above is either available somewhere in the core or can be implemented relatively easily.

Has anyone implemented anything similar to the above, or have an idea where to start?