Change the package schema to support target specifications

Instead of the old 'requirements' packages now specify 'target' systems
they can run on (no information means any). Also, they can specify file-
sets for specific target systems.
Schema change: do not duplicate target information

Instead of duplicating target information on file-sets, let them
reference a target on which their files should be used. Also, do
not allow ambiguous language-version specification for a target.
update item description API to show targets
update ALD.php submodule
Support filtering by target in item listing
fix items/list to obey sorting

If data was filtered after MySQL, the sorting was broken.
Remove the call to sort() to fix this. It isn't necessary
anyway as array_slice() has the desired effect already.
Update ALD.php module
Merge pull request #39 from Library-Distribution/item-target

Target specifications for items