improve 'astype' arg/kwarg handling; new tests