Write a program determines if a string is a palindrome (i.e. the string is spelled identically backward and forward). The program should ignore spaces and punctuation as well as special characters and digits (i.e. only count letters as part of a palindrome, and account for upper/lower case. For example, 'B' and 'b' are matching letters).