added missing new linein logging.
changed sha1_compute to accept a 20 byte array to populate rather than allocating a new array every time.
replaced a file read with call to utility file read method.
added a check to see if the bencoded file is a dictionary before reading it as a dictionary.
replaced code with util method and updated logger with preprocessor directives.
removed an extra todo comment.