Implemented the feature that stores backup memory data to a MapStore. Issue #479

Hi, all
   This is my first time to initiate a pull request that resolve the issue #479(https://github.com/hazelcast/hazelcast/issues/479).
   This feature includes two modifications:
         1. MapStoreConfig.java. Adding backupStoreClassName and backupStoreFactoryClassName.
         2. XmlConfigBuilder.java. Adding the XML parser to parse backup store configuration.
         3. CMap.java. Adding the operations to update backup data in async/sync ways.
         4. Several Test cases that verify the functions to store/load/delete backup data.
    I hope you guys may think this is a useful feature and make it in the main stream.