namedtuple/recordtype rows corner-cases fixes, indexing support

Fixed crash in namedtuple/recordtype rows happens when column name is not a valid python identifier or is a keyword

Added indexing support for recordtype-based rows

This pull request also contains old fix that allows passing None as server/database name. See another pull request for details.