Modifying classpath takes previous attributes into account

When the output location of a sourcepath entry was modified by
m2e-android, it created a whole new classpath entry with default
values, so properties added to the old entry by m2e was dropped. This
new implementation just modifies the old entry object, so all attributes
added by m2e are retained. Also when the Maven Container was set as
exported, the attributes of the old entry was not copied into the new
entry. Now all attributes are copied to the new entry.

See here for more information: #182
Added test to verify classpath attributes are not dropped