Multiple changes

- Reimplemented Mirror's evaluate metafunction.
- Updated Mirror's traits.
- Updated registering code.
- Added new test cases for Mirror traits.
- Other minor changes.