Implement additional error handling in util.import_object function

Actually ``tornado.util.import_object`` can raise several different exceptions (``ValueError``, ``IndexError``, ``AttributeError``, ``ImportError``) in different cases. This is not so convenient to handle all of them. Of course, there are two ways to improve such behavior: 

1. Standardize exceptions and raise for ex. ``ImportError`` or ``ValueError``.

2. Return None in case of failed operation.

According to usage of this function in framework:

https://github.com/facebook/tornado/blob/master/tornado/httpclient.py#L196

I implemented second approach. ``DocTest`` for function is updated so you can find all cases there.