Added threading support via the 'fork' method for a Block object which creates a new process in the background and returns a new 'Fork' object which accepts the 'get' method that waits for the process to finish and returns the result.

Example:
    var start_time = Time.now;

    # Fork process 1
    var p1 = {
        Sys.sleep(5);
        "Process 1";
    }.fork;

    # Fork process 2
    var p2 = {
        Sys.sleep(5);
        "Process 2";
    }.fork;

    say p1.get;   # wait for the process to finish
    say p2.get;   # ==//==

    # Duration == 5 seconds, not 10 seconds!
    say "** Duration: #{Time.now - start_time} seconds.";