Fixed #1: Move banner parsing from bash to python.