Add method to retrieve given annotation linked to object.

Method useful to retrieve annotation like modulo annotation
added at import time.
Fix class cast exception.
Fix query to load annotations.
Add tests for modulo retrieval.
Add modulo namespace to constant.
Add test to create XML annotation.
Review existing tests.
Add modulo ns to pojos and add test using modulo ns.
Fix documentation.
Add pixels to the list of supported type. Test added too
Improve Java doc.
scons: Update to version 2.2.0
ParametersI.h: Work around Ice bug in ParametersIPtr typedef
templates/combined.vm: Work around Ice bug in ${PojoI}Ptr typedef

I'm not happy with this patch.  The seemingly arbitrary escaping
of the leading '#' seems wrong, even if it does result in correct
generated output.  Is there a better way to do this?
OmeroCpp: Use IceInternal::Handle everywhere for Ice >= 3.4

This replaces the use of IceUtil::Handle, which will continue
to be used for Ice 3.3 and earlier.
OmeroCpp: Correctly forward declare wrapped types and upCast

IceInternal::Handle requires that the wrapped type be declared but
not defined.  This is a bit odd, but this is Ice.
IceInternal::Handle requires that upCast be explicitly defined for
every single type.  Templates are too hard, apparently!
OmeroCpp: Use correct typecasts
templates/combined.vm: Correctly forward declare wrapped types and upCast
Check row/column are not > han the size of table (See #9430)
Remove commented out code.