Redid interface in properly sane way now that Java prototyping works