Major revision

Modified  a lot of code and file structure. Added theme feature and made
it portable for better flexibility.