An implementation of Infocom's Z-Machine