You're lonely and bored. Your doritos are stale and no one is online, this loneliness you feel has a cure...A TAMAGOTCHI
For those of you who have never heard of a Tamagotchi, here's a quick summary:
A tamagotchi is a virtual pet whose life you must sustain through various activities including eating, playing, making it sleep etc. Tamagotchi's go through several life cycles, most notably, egg/infant, teen, adult, elderly. Tamagotchi's can die from lack of attention (in the classic ones, half a day of neglect would kill it) and also from age. For more information check the wiki http://en.wikipedia.org/wiki/Tamagotchi
Your job is to create a tamagotchi via command line, gui or any other avenue you'd like. Even just an internal API and a main method demonstrating it's usage. The goal is to see how you handle open ended design requirements.
The tamagotchi must have at least the following requirements:
- Capable of being fed
- Capable of being put to bed
- Capable of going to sleep on its own, losing health from hunger and pooping on its own without prompting
- Capable of aging from birth through to death
These are the bare minimum requirements, feel free to get quirky and add weird stuff like diseases and love interests.