fixed issue #33622
simplified
added test for cp33622
fix for cp33133 - str.lower() behaves as specified

hide optimized, internal version of "lower"
exposed fixed version of "lower"
match cpython behaviour

switched culture to match cpython behaviour for uppper/lower
added test to illustrate turkish casing
fixed cp33123 - isatty returns False for redirected stdin/stdout/stderr

backported from .net45 Is[Output/Error/Input]Redirected
moved console specific backport into separate class
fix for cp#33725

lineno and col_number for elif are set
added test
Merge remote-tracking branch 'paweljasinski/cp33622' into ipy-2.7-maint
Merge remote-tracking branch 'paweljasinski/cp33133' into ipy-2.7-maint
Merge remote-tracking branch 'paweljasinski/cp33123' into ipy-2.7-maint
Merge remote-tracking branch 'paweljasinski/ast_elif' into ipy-2.7-maint