write some test code, fix bugs, add default Data/ScalarData API templates