updated caching mechanics

cache now supports hard references in addition to soft references
new tools added to web application
Merge pull request #5 from Differ-GSOC/jpylyzer-unittest

Jpylyzer/Jhove/Kdu Expand unittests and some value normalizing.
login overhaul, anon uploads

login tested and functional.  anon upload partially functional; drag
drop not yet implemented, url (remote) upload not yet implemented,
single file "compare" currently broken
anon upload improvements & url support
styling additions; more visible load indicator

styling information added to styles.css for anon upload interface. a
more visible load/progress indicator (which overrides the default) also
included
djvudump tests added. New test image: 05.djvu
null exception fix

fixed null pointer exception in DifferPrograTab
null exception fix updated
registered user URL upload

registered users may now upload files from URL (remote) locations; also
granted ability for registered users to "Proceed" when only single image
file is selected.
guaranteed filename uniqueness

anonymously uploaded filenames are now guaranteed to be unique. i.e., if
anon user uploads two *unique* files both named "ImageFile.jpg", the
first uploaded file will NOT be overwritten by the second (which could
potentially break the compare process)
Added exiftool tests [image01 image14]. Refactor of methods into TestHelper. Updated test context values. Values to be normalized or ignored are at the top of ignoredProperties.
Actual changes, see last commit message
Refactor all tests to just have one loop. Updated working specialProperties and a ValueTester interface opening for more special properties to be tested easily.
Profiler report added to index
logo change, compare button size

changed logo to new image; enlarged the compare & proceed buttons in
both registered and anonymous upload sections
Merge pull request #16 from Differ-GSOC/image01-test

Image01 branch
registration & captcha fixes

captcha may now be reloaded manually; captcha reloads if any
registration exception is thrown (null fields, invalid captcha, etc.);
all registration exceptions merged into single try-catch block;
formatting/layout fixes

Compare button size and text caption now rely entirely on CSS; minor
formatting fixes
layout tweaks, fixed anon image preview issue

layout in anonymous upload panel has been cleaned up; the issue which
caused the image preview (in the anonymous upload panel) to display at
full size has also been fixed