add Signal, fixes #6