A lot of stuff added and majoir bug fix!