got validation stuff working
added serialization