added support for aliases and worked more on parsing