Refactored a bit and added some more tests. Fixed some bugs. Liquid now flows through to adjacent pipe (mostly)
Fixed a bug that was causing liquid flow to be unreliable (pipe models weren't being removed from the pipe grid's list when they were replaced). Liquid now flows through cross pipes twice.
If a pipe has liquid in it, it cannot be replaced with another pipe.
If there isn't a correctly oriented adjacent pipe, liquid spills everywhere
A little bit of tidying up and refactoring, plus moved drawables to correct folder for current emulator