A Level-Set Approach For Simulating Dendritic Crystal Growth