change argument order for Unmarshal and add some tests