fix #905 object declarations leaking self refs + update spec