Merge pull request #10 from bukzor/master

None and empty-string are legitimate values to return from a function
Merge pull request #11 from bukzor/master

restore compatibility with 2.4.5
first working version with simple instrumentation
use bloom filters to deduplicate log entries
improve documentation
add support for throttling logging to a % of evaluations
switch to statically allocated placeholder stack
improve handling of exceptions during placeholder evaluation
buffer writes to avoid calling clog.log_line many times
add calls to FLUSH in CheetahTemplate.getVar/hasVar
get the deploy SHA from Python (util.version), not the filename
refactor code for easier testing
redesign logging & add timing info
add test code
reset timers on every instrumentStartRequest()
refactor a bit and add more comments
add more error handling and tests
delay instrumentInit() until first instrumentStartRequest()
add tests for placeholder stack and log buffer overflows
fix handling of exceptions