Changed the way casting works, It now uses available type names to tokenize casting separately.