Read a single message from the queue.
        
        :type visibility_timeout: int
        :param visibility_timeout: The timeout for this message in seconds

        :rtype: :class:`boto.sqs.message.Message`
        :return: A single message or None if queue is empty

def read(self, visibility_timeout=None, callback=None):
        """
        Read a single message from the queue.
        
        :type visibility_timeout: int
        :param visibility_timeout: The timeout for this message in seconds

        :rtype: :class:`boto.sqs.message.Message`
        :return: A single message or None if queue is empty
        """
        def _read(rs):
            if callable(callback):
                callback(rs[0] if len(rs) == 1 else None)
        self.get_messages(1, visibility_timeout, callback=callback)