Add check for working CXX compiler before Ice header check.

This prevents getting a missing Ice.h error when the problem is actually a non working CXX compiler
Don't override CXX if the os env for CXX is empty string
Add separate check for ice lib so we get better errors
Sanitize FS paths in ImportLibrary and comment-out more redundant code.
Address various FS issues arising from PR669 discussion.
Adopt TempFileManager in FS path unit tests.
Enforce top-level user-directory in managed repo

The decision was to maintain a top-level user directory
which has special permission handling. The directory
(of the form `%name%_%id%`) will be placed in the "user"
group so that it is visible from all queries.

NB: This does not yet fix the rest of the code that assumes
writing to the top directory is permissible!
Adjust repo dir to start with user only, and ask BF for required dirs.
Fix problem with creation of template directory.
Fix public repository listFiles method that I broke with PR669.
Fix Python 2.4 syntax in admin.py (See #10412)
Update submodules
Merge pull request #772 from snoopycrimecop/merge/develop/submodules

Update submodules (req. dirs)
Merge pull request #756 from mtbc/fs-path

FS path changes (post-PR669 discussion)
Merge pull request #767 from mtbc/fix-repo-listfiles

Fix public repository listFiles method that I broke with PR669.
Merge pull request #770 from bpindelski/rebased/develop/admin-fix-10412

Fix Python 2.4 syntax in admin.py (See #10412) (rebased onto develop)
Merge pull request #776 from JesseCorrington/cpp-build-fixes-develop

Integrate Cpp build fixes into develop
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.