Merge pull request #11 from allending/master

Neaten untidy code - still horrible  OTL
partial refactor w/ sign / decimal support. edge cases not 100% examined.
refactor / memory function might have bugs
oh. yes there was something like forward declaration
brain managing the current state enum is not a good idea. let the actual brain state instance speak
added simple equation label. also fixed state traction error (from left to op. calculation result was not properly saved into the left operand.)
added icons 캬캬캬 and partial fix (?) of #12
why i always fail to add icon png in the first place -_-
fixed #12.  there has been some inconsistency and unclear r&r between input string and the actual double value. also unclear separation between left operand and the calculation result. now init state holds result, until state change, result is not yet pushed to left operand.  mostly works,  but still has one bug relating 'decimal value memory recall & pressing another decimal point' case. in iPhone calculator, memory value does not allow appending another digit. in fact MR introduced many exceptional cases, causing unexpected dirty if else statements inside each state -_- mostly related to parsing number format (leading zero, decimal.. )  also, it turned out that certain inputs cause consecutive state change, that also cased lots of if else's and a headache.. maybe should have defined more states. commit anyway not to loose changes
fixed #10
brain not really keeping the memory state, which i eventually have to implement,  but because i hate holing old issues.. now MR button turns in yellow when there's something stored.
kiwi setup
fix test setup