Totally changed library makeup. No longer locks package properly though, which is a shame.
Merged some yaclml extension stuff.