Handle archive dependencies for .a files

* Pass only the objects that are newer than the archive. Should improve
  performance when only small parts of a large lib have changed.
* Reextract existing archives when combining into larger one. (otherwise
  GCC complains)