Refactored existing code and added support for symmetric encryption.

Ahh, gotcha. Fixed, don't know why it is still showing up here.