add scala actor model and some test case on self invoking