An interesting programming problem.
Not intended to be fully functional. Some bits have been left-out for out mutual amusement.
You can contact the folks at VyperLogix.Com for details as to how you might obtain a License for the Vyper Logix Library which is also available online from http://library.vyperlogix.com or email [email protected].
Remove the bits you don't have or create those you need. Supply your own data and you too can use this code.
Hey, if you wanna be a software engineer you gotta deal with whatever bits you don't got, right ?!? Get over it !!!
Enjoy !!!