Added optional custom \"ID name\" argument to database constructor