Current implementation doesn't use Views API.
Start using Views API :)
Needs review
2.0
Code
Patch added.