canUseTopic()

Creates canUseTopic(), a mob proc contained for the moment in the machinery.dm

The Topic() proc of machinery will use this.
The first non-machinery item to use this will be the violin and piano.
There are plans to make admin observers use this, to make AIs don't be able to use Topic() when they lose power (doing that currently will break gameplay) and make all items use the canUseTopic() proc if needed.
I just wanted to pull the fix for the piano and violin quick, the rest is a todo.

Fixes issue https://github.com/tgstation/-tg-station/issues/2471