Refactor module registration to support multiple module declarations per classpath entry

Each file will be treated as module declaration file and modules declared within will be registered. This allows for naming module declaration files differently, so they can be easily merged.

Example
--
Imagine the following library's development checkout:

```
vendor/libray
|- src/main/php - module.xp ("vendor/library") + com/vendor/library
|- src/test/php - module.xp ("test extends vendor/library") + com/vendor/library/unittest
'- src/test/resources- module.xp ("res extends vendor/library") + com/vendor/library/res
```

Now, for easier distribution reasons, the files should be merged together in a single file containing all of the library. The following shows the issue:

```
vendor.library.full.xar
|- module.xp                      <-- Should a merge of all three above modules
'- com/vendor/library
   |- unittest
   '- res
```

Because `module.xp` is hard to merge by hand (e.g. by shell utilities), this pull request's idea is to support "multiple module.xp" files per class loader path:

```
vendor.library.full.xar
|- library-module.xp
|- test-module.xp
|- res-module.xp
'- com/vendor/library
   |- unittest
   '- res
```