Fix some minor tag errors, fixes #686

- element 'x' .after 'y' should return empty
- <el@whatever.after> with no context should be considered invalid, same
with before
- Escape code should not throw NPE's on null input
- books without author/title/pages (invalid books) shouldn't cause Book
property exceptions, and simply have their data be not saved.