cry_san: почему не работает? Нужно делать такие вещи только в подписчике, используя .observeOn(AndroidSchedulers.mainThread()). А изменение глобального состояния во время выполнения цепочки преобразований противоречит логике Rx.
Только вот конечным автоматом html не распарсить, к сожалению. У него, вроде бы, контекстно-свободная грамматика, то есть на уровень выше по Хомскому, чем то, что можно распарсить конечным автоматом(регулярные грамматики). Артур, почитайте про грамматики вообще, про регулярные и контекстно-свободные в частности.
Берите какой удобнее, 8-16Гб оперативы. Я, например, 2 года писал под андроид на макбуке эйр 2011, 13" с 4Гб оперативы. Сейчас - на прошке 2013, 8Гб, 13". Вполне хватает.
newdancer: вместо Picasso возьмите Glide, там используется дисковый LRU-кэш, руками практически ничего делать не надо. Если решили в базу всё ложить, то RxJava вам не нужна, но я бы в такой задаче пристально посмотрел в её сторону.
En1q0d: не надо хранить статичную ссылку на имейджбаттон, у вас активити утечёт. Пользуйтесь startActivityForResult/onActivityResult. По коду непонятно, что вы туда пихаете.
Ну и ещё раз предостерегу - не надо делать игру на имейджбаттонах, возьмите нормальный игровой движок.