Added basic shadow mapping and fixed a few bug