Use @ operator for matrix multiplication

Following up on issue #301 (Clarify transform order of operations and API):

We might consider replacing the * operator with @ for matrix multiplication option. This might be considered as best practice, following PEP-465, but I think that's a reasonable thing to discuss separately.

Recommended best practice is to use the @ operator to represent matrix multiplication, rather than * (regular multiplication sign). The arguments for doing so are discussed extensively in the linked PEP. This feature is standard as of Python 3.5, and thus represents no added dependency or requirements.

This issue is a proposal to make this change throughout the extensions codebase. It is not necessary that it be changed throughout at the same time, but beginning to make the change somewhere (e.g., transforms.py) will make it more natural to elsewhere in the future.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information