Added code that I had been toying with to project. Moved all main pieces into Core.