Fully working card reading and parsing